这是Angular 2.4.8的工作代码:
constructor(private _router:Router) {
_router.events
.filter(e => e instanceof NavigationEnd)
.forEach(e => {
console.log(_router.routerState.root.firstChild.params['value']['id']);
console.log(_router.routerState.root.firstChild.firstChild.params['value']['id']);
);
}
我很难相信这是这样做的方法,因为当我使用点语法时,例如:
_router.routerState.root.firstChild.params.value;
或
_router.routerState.root.firstChild.firstChild.params.value;
......我明白了:
Property 'value' does not exist on type 'Observable<Params>'.
感觉很乱,但是现在上面的代码很有用。我只是想知道获取路线参数的正确方法。