2016-10-30 2 views
5

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

Я теперь с использованием новейших LIBS, как бы я обновить это:

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

@Component({ 
    moduleId: module.id, 
    selector: 'HeaderComponent', 
    templateUrl: 'header.component.html' 
}) 

export class HeaderComponent{ 
    router : Router; 

    constructor(router: Router, location: Location){ 
     this.router = router; 

     this.router.changes.subscribe((currentRoute) => { 
      let currentRoute = this.location.path();   
     }) 
    } 
} 

Это мой модуль:

export * from './header.component'; 

import { NgModule } from '@angular/core'; 
import { CommonModule } from '@angular/common'; 
import { RouterModule } from '@angular/router'; 

import { HeaderComponent } from './header.component'; 

@NgModule({ 
    imports: [RouterModule, CommonModule], 
    declarations: [HeaderComponent], 
    exports: [HeaderComponent], 
    providers: [] 
}) 

export class HeaderModule { } 

ответ

12

В новом маршрутизаторе это

this.router.events.subscribe(...) 

См. Также Angular 2 router event listener

+0

Это похоже на работу. this.location.path() не работает с новыми библиотеками, какие-либо идеи? его в моем предыдущем коде и его жалобы на путь – AngularM

+0

'this.location.path()' должен работать https://angular.io/docs/ts/latest/api/common/index/Location-class.html –

+1

он работает Прекрасно, у меня это было вне сферы действия – AngularM

Смежные вопросы