【发布时间】:2017-04-30 21:35:50
【问题描述】:
我对 Angular 2 服务的生命周期有疑问。 当使用所有指定的提供程序创建组件的注入器时,其中一些可能需要清理逻辑(例如清除超时,或取消一些异步 XMLHTTP 请求)。由于注入器提供程序中的服务没有生命周期,因此解决方法是在组件 ngOnDestroy 内的每个服务上手动调用一些“销毁”方法。 我的问题是 - 有更好的方法吗?
【问题讨论】:
-
不,对不起....
我对 Angular 2 服务的生命周期有疑问。 当使用所有指定的提供程序创建组件的注入器时,其中一些可能需要清理逻辑(例如清除超时,或取消一些异步 XMLHTTP 请求)。由于注入器提供程序中的服务没有生命周期,因此解决方法是在组件 ngOnDestroy 内的每个服务上手动调用一些“销毁”方法。 我的问题是 - 有更好的方法吗?
【问题讨论】:
我们面临同样的问题,我们达成了相同的解决方案。 在服务类中创建一个名为destroy 的函数。然后,在提供服务组件的ngOnDestroy内部,调用服务销毁函数。
【讨论】: