这是我的代码段(示例)
fetchData(): void {
if (this.subscription$) {
this.subscription$.unsubscribe();
}
this.subscription$ = this.store.select('someEvent')
.subscribe(data => {
console.log(data);
});
}
ngOnDestroy() {
this.subscription$.unsubscribe();
}
我需要调用fetchData
方法以添加另一个订阅以从store
获取当前状态。因此,在这一点上,我已经像上面一样实施了它,以释放上一个订阅。它以我希望它能工作的方式工作,但我觉得代码并不整洁。我正在研究takeUntil
和takeWhile
,以使代码更加 Rx
,但我没有做到。
使用主题来信号破坏
destroyed$=new Subject()
fetchData(): void {
this.store.select('someEvent').takeUntil(destroyed$)
.subscribe(data => {
console.log(data);
});
}
ngOnDestroy() {
destroy$.next()
}