是否需要调用unsubscribe for RxJS first()
在以下代码中:-是否需要调用unsubscribe for RxJS first(),rxjs,rxjs5,Rxjs,Rxjs5,在以下代码中:- RxJS.Observable.of(1,2).first().subscribe((x) => console.log(x);); 鉴于操作员first() 另外,subscribe()接受三个参数,最后一个是完整的回调。运行以下代码将输出1,后跟“done” Rx.Observable.of(1) .subscribe( (x) => console.log(x), // next (x) => console.error(x), /
RxJS.Observable.of(1,2).first().subscribe((x) => console.log(x););
鉴于操作员first()
另外,subscribe()
接受三个参数,最后一个是完整的回调。运行以下代码将输出1,后跟“done”
Rx.Observable.of(1)
.subscribe(
(x) => console.log(x), // next
(x) => console.error(x), // error
() => console.log('done') // done
)
对于提供的示例,您不需要取消订阅
,也不需要调用first
,因为可观察到(1)
的第一个(和最后一个)值发出后实际完成。否。它在调用first()
后自动取消订阅。当前语法为observable.pipe(first()).subscribe(func)代码>用于RxJS 6
各国:
如果在没有参数的情况下调用,first
发出源可观测值的第一个值,然后完成
更改为1,2,但您的答案仍然正确,因为您提到它已完成。如果您缺少一个)
:)当源observable从未发出值时会发生什么情况,这是否意味着订阅保留在那里并可能会造成内存泄漏?@Gagan是的,它可能会造成内存泄漏。那么在这种情况下如何添加取消订阅?