在Angular 9中,你可以使用NavigationStart
事件来获取导航开始时的目标URL。下面是一个解决方法,包含代码示例:
Router
和NavigationStart
:import { Router, NavigationStart } from '@angular/router';
Router
:constructor(private router: Router) { }
ngOnInit
方法中订阅NavigationStart
事件:ngOnInit() {
this.router.events.subscribe(event => {
if (event instanceof NavigationStart) {
console.log('目标URL:', event.url);
}
});
}
在这个例子中,我们订阅了Router
的events
属性,它会发出一个导航事件序列。我们使用instanceof
检查事件是否为NavigationStart
类型,然后可以通过event.url
获取目标URL。
这样,当导航开始时,目标URL将会被打印到控制台上。
请注意,这个解决方法是在组件初始化时获取目标URL的一种方式。如果你希望在导航期间或导航结束后获取目标URL,可以使用其他适当的事件类型。