gpt4 book ai didi

angular - 如何在 Angular 中检测路线何时更改和新 View 何时被替换

转载 作者:太空狗 更新时间:2023-10-29 17:33:27 26 4
gpt4 key购买 nike

我希望检测何时更改路由和替换新 View (html)。

尝试了下面的代码,但不知道如何继续。

this._routerSub = this.router.events
.filter(event => event instanceof NavigationEnd)
//.do(event => console.log(event)) //
.subscribe((value) => { });

也尝试了下面的代码但出现错误

Argument of type Event is not assignable to parameter of type '(value:Event)=>void'.

   import { Router, NavigationEnd, Event  } from '@angular/router';

this._routerSub = this.router.events
.subscribe(event : Event) => {
if (event instanceof NavigationEnd) {
console.log(event.url);
}
});

下面的 Vega 是我的 app.component.ts 和 app.component.ts 代码。是不是应该在激活时调用 onActivate。每当实例化新组件时,路由器导出都会发出激活事件。

app.component.html

<router-outlet (activate)="onActivate($event)" ></router-outlet>

应用程序组件.ts

   onActivate(e) {
debugger;
console.log(1);
}

最佳答案

如何使用 router-outlet 暴露的 activate 事件:

<router-outlet (activate)="onActivate($event)"></router-outlet>

onActivate(e) {
console.log(e.constructor.name);
//etc... you can access to a lot of other information
}

关于angular - 如何在 Angular 中检测路线何时更改和新 View 何时被替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50674239/

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