gpt4 book ai didi

javascript - Angular 2检查下一条路线OnDestroy

转载 作者:搜寻专家 更新时间:2023-10-30 21:22:42 25 4
gpt4 key购买 nike

我正在尝试对任何 NavigationEnd 路由器事件触发操作,除非在两者之间导航a) 子路由;b) 在另一条特定路线上。

这是我的一段 app.routing.ts:

// some other routes setup...

{ path: 'scrapers/:version', component: SingleScraperComponent, children: [
{ path: '', redirectTo: 'statistics', pathMatch: 'full' },
{ path: 'statistics', component: ScraperStatisticComponent },
{ path: 'targets', component: ScraperTargetsComponent },
]},

// some other routes setup...

这是我在 SingleScraperComponent 中的 Router 事件订阅:

// some component code

ngOnInit(): void {
this._router.events.filter(event => event instanceof NavigationEnd).takeWhile(() => this.isAlive).subscribe(
(event: NavigationEnd) => {
console.log(event);
if (event.url.indexOf('site-preview') === -1) {
this._site.resetQuery();
}
}
);
}

// some component code

我也可以使用 OnDestroy,但我需要知道 SingleScraperComponent 销毁后的下一条路线。

最佳答案

好的,我已经使用 routerState 快照来验证下一条路线:

ngOnDestroy(): void {
if (this._router.routerState.snapshot.url.indexOf('site-preview') > -1) {
console.log('Hello, from needed route!');
}
}

但如果有更清晰的方法,我将不胜感激。

关于javascript - Angular 2检查下一条路线OnDestroy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47510644/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com