【问题标题】:Is it necessary to unsubscribe Angular Form statusChanges/valueChanges observable?是否有必要取消订阅 Angular Form statusChanges/valueChanges observable?
【发布时间】:2018-10-16 17:45:47
【问题描述】:

通过深入研究角度形式的实现,我发现可观察到的角度形式 valueChanges/statusChanges 是 EventEmitters。是否有必要取消订阅这些 observables?因为什么时候单独使用 EventEmitters 我们不会取消订阅?

_initObservables() {
    (this as{valueChanges: Observable<any>}).valueChanges = new EventEmitter();
    (this as{statusChanges: Observable<any>}).statusChanges = new EventEmitter();
}

【问题讨论】:

  • 如果手动订阅,必须取消订阅。

标签: angular observable angular6


【解决方案1】:

如果不再需要通知,unsubscribe 始终是一个好习惯。大多数时候,您不一定可以放入ngDestroy() 函数。

是否总是需要取消订阅? 不,如果 EventEmitterSubjectObservableSubscription 所在的同一范围(组件或服务)中,则无需销毁,因为所有引用都将被完全删除。

简而言之,如果SubscriptionObservable 的范围不同,请确保Observableunsubscribe

【讨论】:

    猜你喜欢
    • 2017-05-12
    • 2019-01-31
    • 2023-01-04
    • 2021-07-22
    • 1970-01-01
    • 2017-06-09
    • 2018-12-12
    • 2020-04-26
    • 2022-01-02
    相关资源
    最近更新 更多