我有一个 Angular 形式的组数组。在应用程序的其他地方,一些订阅是在表单控件验证更改上设置的。在生命周期的某个时刻,我删除了一个表单组。我是否需要担心订阅仍然在不在内存中的对象上打开?
不
如果您在代码中的任何地方调用 .subscribe ,那么不泄漏内存的唯一方法是确保这些订阅再次取消订阅。
您需要手动取消订阅每一个或确保您订阅的 observables 都是有限的——这意味着它们在某处有一个“结束”信号。它们可以是有限的序列(.first()、.take() 等),也可以通过以 .takeWhile() 或 .takeUntil() 结尾来关闭它们
订阅不关心您是否离开范围、删除引用的对象甚至导航离开。您需要确保他们取消订阅。
在此处查看我的答案:RXJS - Angular - 取消订阅主题
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句