使用routerLink导航时,不会触发角度路由器事件

时间:2018-03-19 02:32:41

标签: angular router

我有一个组件,我需要使用以下代码检查当前路由URL:

ngOnInit() {
    this.router.events.subscribe((val: any) => {
        if (val instanceof NavigationStart) {
        }
    });
}

出于某种原因导航到具有[routerLink]="['/person/edit', perosn.id]的组件时,如果我刷新页面,则单击第一次事件的链接时路由器事件不会被触发。 然后,如果我再次点击链接,事件就会被解雇。

任何想法为什么一开始都不会被解雇?

1 个答案:

答案 0 :(得分:0)

ngOnInit()仅在实例化组件后调用一次,但在路径更改时不调用。

您可以注入路由器并订阅它的事件或参数以获得有关路线更改的通知。

constructor(private route: ActivatedRoute) { }
ngOnInit() {
     this.route.params.subscribe(val: any) => {
        if (val instanceof NavigationStart) {
        }
    });
}
相关问题