2016-05-15 1 views
1

Как я могу передать некоторые параметры моим гнетам, как в старом маршрутизаторе?Угловые 2 параметры прохождения роутера и получить их при изменениях

Старый

@RouteConfig([ 
    new Route({path: '/home', component: HomeCmp, name: 'HomeCmp' }) 
]) 

Новый

@Routes([ 
    {path: '/login', component: Component} 
]) 

, а затем получить их в подписаться на изменения?

export class AppComponent { 

     public constructor(private router: Router) { 

      this.router.changes.subscribe((x) => { 
       console.log(x); 
      }); 

Я имею в виду старый угловой было государство, и мы могли бы приложить событий onBefore ЭСТ и получить текущее состояние. Как на самом деле это будет работать здесь. this.router.changes.subscribe - он вызывает изменение, но не дает никакой информации об этом - x не определено.

ответ

0

В подписке больше нет параметров. Вам необходимо использовать службу определения местоположения для проверки текущего маршрута:

import {Location} from '@angular/common'; 
import {Router} from '@angular/router' 

export class SomeComponent { 
    constructor(router:Router, private location:Location) { 
    router.changes.subscribe(() => this.routeChanged()); 
    } 

    private routeChanged():void { 
    var path:string = this.location.path(); 
    console.log("Path:" + path); 
    } 
} 
Смежные вопросы