Angular 2 - 是否在刷新时调用ngOnDestroy,或者只是在远离组件时调用?

geo*_*gej 27 angular

我想弄清楚Angular 2中的ngOnDestroy是在刷新时运行还是当有人离开页面时?

Gün*_*uer 32

在刷新时或当您离开当前页面时,ngOnDestroy将不会被调用.该应用程序将被浏览器销毁.

只有当Angular2从DOM中移除组件,因为您移开或调用destroy()动态创建的组件时,ngOnDestroy()才会调用它.

你可以听beforeunloadunload如果你需要一些动作之前的申请是由浏览器破坏发生自己.

也可以看看

  • @GünterZöchbauer,我导航到某个 /xyz 路径,该路径使用 ngOnDestroy 加载组件。当我手动将浏览器 URL 更改为根路径(“/”)时,ngOnDestroy 不会被调用。 (3认同)
  • 浏览器关闭时组件是否被销毁? (2认同)
  • @Ritesh不,只有当Angular本身销毁它并且浏览器关闭时它将不再有时间.另见/sf/ask/2634981261/#37642657 (2认同)