在角度 4 中切换路由时,应用程序会变慢,节点的 nr 不断增加(在 chrome 中,而不是在 Firefox 中)



当我多次切换路线时,应用程序会变慢。 当我启用 chrome 调试器并查找"性能 + 内存"时,我看到节点的 nr 增加。

切换路由时,dom 节点似乎不会被破坏。

我的组件侦听 ngrx 存储,但取消订阅已到位,更改检测在推送中。我使用生产部署 = true (启用生产模式(((

在火狐中,我没有这个问题。 可能是 chrome 中的插件保留了这些 dom 元素? 当我关闭调试器时,问题仍然存在。

在 chrome 中安装的插件:redux、augury、... 但即使调试器关闭,也会出现问题。

您可以手动触发垃圾回收吗?

就我而言,这是因为我们在卸载视图时没有清理商店。您可能希望尝试清理组件销毁事件处理程序中的内容。

在任何情况下,使用chromes分配时间线来分析应用程序,您可以看到哪些内容保留了未进行垃圾回收的对象。

更新:我们已经在ngdestroy事件中取消了rxjs可观察量的注册。

最新更新