Come ottengo il percorso assoluto della pagina corrente in Angular 2?

In sostanza mi sono imbattuto in questo problema, in cui ho bisogno di un riferimento alla rotta corrente per usare i gradienti, ma devo ancora capire come tradurre la soluzione in Angular 2.

constructor(location:Location) { console.log(location.prepareExternalUrl(location.path())); } 

https://angular.io/docs/ts/latest/api/common/index/Location-class.html#!#prepareExternalUrl-anchor

window.location fornisce ulteriori informazioni

Esempio di Plunker

È ansible utilizzare l’iniezione DOCUMENT da @angular/platform-browser .

 import { Component, Inject } from '@angular/core'; import { DOCUMENT } from '@angular/platform-browser'; @Component({...}) class SomeComponent { constructor(@Inject(DOCUMENT) document: any) { console.log(document.location.href); } } 

Oggetto posizione

L’object document.location è la soluzione one stop.

Utilizzare gli attributi all’interno dell’object posizione dal documento per ottenere il percorso nel modo desiderato. Vediamo questo con un esempio.

Quindi per https://www.google.com/images

  • document.location.href restituirà https://www.google.com/images
  • document.location.origin restituirà https://www.google.com
  • document.location.protocol restituirà https:
  • document.location.host restituirà google.com
  • document.location.hostname restituirà google
  • document.location.pathname restituirà /images

se si ricarica la pagina, non è ansible ottenere il percorso del percorso da Router o ActivatedRoute. Dovresti usare window.location.pathname