2016-11-29 92 views
1

我的路线声明如下:如何访问路线“数据”的路线变化,在角2

const routes: Routes = [ 
    { 
     path: 'somepath', 
     component: SomeComponent, 
     canActivate: [LoginGuard], 
     data: { 
      showSidebar: true 
     } 
    } 
]; 

然后,后来,在我的NgModule进口,我加载路线是这样的:

imports: [ 
    RouterModule.forChild(routes), 
    ... 
] 

我想知道如何在路由更改时访问data.showSidebar标志?

谢谢。

回答

-1
constructor(route:ActivatedRoute) { 
    route.data.forEach(data => console.log(data.showSidebar)); 
} 

又见Changing the page title using the Angular 2 new router

+0

遗憾的是,似乎没有工作。按照这种定义,'data'对象上不存在'showSidebar'。 – irfanka

+0

你把代码放在哪里?进入'SomeComponent'? –

+0

不,我需要它在主'AppComponent'中。 – irfanka