我想取消订阅 observable,我应该使用 first() 运算符取消订阅吗?
下面的例子,
Rx.Observable.interval(100)
.do(x => console.log(x))
.first()
.subscribe(x => x);
上面的代码是会自动退订还是需要做什么?
我想取消订阅 observable,我应该使用 first() 运算符取消订阅吗?
下面的例子,
Rx.Observable.interval(100)
.do(x => console.log(x))
.first()
.subscribe(x => x);
上面的代码是会自动退订还是需要做什么?
first() 运算符采用可选的谓词函数,并在源完成时没有匹配的值时发出错误通知。
无论先发出什么,它都会取消订阅。所以要回答你的问题,你不需要做任何事情。它将取消订阅。
The example that you have given is unsubscribed automatically after the first value is submitted. Use bellow example
Rx.Observable.interval(100) .first() .subscribe( x => { console.log(x) }, err => { console.log("error") }, () => { console.log("Completed"); });
Normally first() operator is used to get the first value of a sequence. I'm not sure whether we can use it for everywhere when we want to unsubscribe.