如何知道可观察对象是否已取消订阅?

时间:2019-11-05 16:21:51

标签: angular

我有一个可观察的对象,我正在取消订阅。取消订阅后,我想检查它是否实际上已取消订阅。 在下面的代码中,我创建了一个Observable,并且正在完成我的观察者,以便它不会收到任何发射值。现在,我正在检查订阅状态,这是正确的,但我尚未取消订阅可观察的状态。


let _data = Observable.create((observer:Observer<any>)=>    
{
  observer.next('1');observer.next('3');observer.complete());
  let subscription:Subscription = _data.subscribe(res=> res});
 console.log(subscription.closed);

如上所述,如果可观察到单播,subscription.closed返回true。但是,如果我正在使用类似于Subject的可观察的多播,它将返回false,因此在这种情况下,它不是未订阅的,但不会发出值。

let sub = new Subject<any>();
    sub.complete();
    console.log(sub.closed);
// return false in this case.

0 个答案:

没有答案