gpt4 book ai didi

angular - 为什么每次都会重复调用 ngOnInit

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

Per Angular(https://angular.io/api/core/OnInit 表示 ngOnInit 在第一次检查指令的数据绑定(bind)属性之后,在检查其任何子项之前调用。它仅在指令被实例化。),

所以 ngOnInit 应该被调用一次,但是如 plunker 中所示(这是 https://angular.io/tutorial/toh-pt5 的副本),我只修改了app/heroes/heroes.component.tsapp/dashboard/dashboard.component.ts 有 console.log

并且打开 F12(开发者工具)时,控制台会在更改路由时重复显示日志。

我看了 why ngOnInit called twice? , Difference between Constructor and ngOnInit , Angular 2 App Component ngOnInit called twice when using iframe , ngOnInit called everytime i change route

但不明白为什么每次都调用 ngOnInit。

console.log("ngOnInit in All Heroes");
console.log("ngOnInit InDashBoard");

最佳答案

当路由改变时,组件被销毁,然后当路由改变回来时,组件再次被初始化

将此添加到 DashboardComponent 以亲自查看:

    ngOnDestroy() {
console.log("ngOnDestroy InDashBoard");
}

关于angular - 为什么每次都会重复调用 ngOnInit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48088517/

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