我使用Angular 9,在我的一个组件中,我在url中使用了几个#,但保持在同一个路由url中。
像这样思考:http://myWebsite/compo1#phase1;http://myWebsite/compo1#phase2;
我需要在用户点击";先前的";以及";下一个";按钮。
到目前为止,我使用的是:
@HostListener('window:popstate')
onPopState($event({updateUrl($event(;$event.prventDefault((;}
我可以看到url正在更新,但事件仍在继续,它仍然重定向到#(http://myWebsite/home(
知道我做错了什么吗?
如果使用angular router,则可以使用其内置事件。你试过了吗?
router.events
.filter(e => e instanceof NavigationEnd)
.subscribe(e => /* do stuff */)
https://angular.io/guide/router#router-事件