gpt4 book ai didi

javascript - Angular 2+ Router是否卸载之前懒加载的模块

转载 作者:行者123 更新时间:2023-11-29 10:32:10 31 4
gpt4 key购买 nike

我一直在研究许多 ngModule,每个都封装了自己的一组组件、服务、指令等。它们很大。现在我已准备好将我的应用程序串联起来并将每个模块懒惰地路由到主路由器 socket 上,我担心整体内存消耗,特别是对于低端设备(仅平板电脑,而不是移动设备)。所以我的问题是当Router懒加载一个新模块的时候,之前的懒加载模块是不是卸载了?我只能找到有关 JIT、AOT、预加载和延迟加载的信息,但缺乏有关 Angular 2+ 和后加载上下文中的内存管理的资源或讨论。

预先感谢您考虑我的问题。

最佳答案

我可以确认,虽然它们最初不是使用延迟加载方法加载的,但它们在路由到另一个模块后不会被卸载。更糟糕的是 ngx 不支持卸载模块。这是向 Brad Green 提出这个确切问题的推文。

https://twitter.com/bunsofaluminum/status/642397294474756096 .

我想添加一个关于卸载组件的快速评论。您可以卸载组件和与它们关联的数据,我知道有两种方法 DynamicComponentLoader这是核心的一部分,OnDestroy它的实现就像 OnInit 一样。您应该能够利用这两者来帮助减轻整体内存负载,尤其是当您使用大量可以取消订阅 OnDestroy 的服务时。

关于javascript - Angular 2+ Router是否卸载之前懒加载的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43462243/

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