我有一个导航栏组件,在我的网站的每一页都被调用。
我想让它和一个hostlistener一起检查url何时改变。

@HostListener('window:hashchange', ['$event'])
onHashChange(event) {
    this.checkCurrentURL();
}

private checkCurrentURL(){
    console.log("loaction : "+window.location.pathname)
}

但是它不起作用。
有什么想法吗?
编辑:解决方案
我找到的解决方案是没有hostlistener,但它是有效的。
constructor(private router : Router){
 router.events.subscribe((val) => {
  this.checkCurrentURL();
 });
}

最佳答案

你不需要主机监听。假设您正在开发一个单页应用程序,则需要订阅路由更改事件。

关于angular - Angular2 HostListener检查URL更改,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40635895/

10-10 00:21