我一直在与一个项目一起工作,该项目涉及加载包含地图组件的延迟加载模块。
预期的行为是,当导航到其他模块或子组件时,地图组件应被销毁,而在内存中则什么也没有留下。 因为它的容器组件被破坏了!
发生的事情是在这种情况下,customer-list
的容器组件被破坏并收集了垃圾,但是地图组件仍通过其服务保留在内存中
您导航回到customer-list
时,将启动地图组件的新实例以及地图服务,这会导致您在应用程序的不同页面中导航时随着时间的推移内存使用量增加,因为地图组件不会被销毁或垃圾收集,随着时间的推移会大大降低性能。
这是复制品demo