当我所有的可观察对象都执行完成时,我想触发回调。在我的另一个、较老的项目中,我使用了 finally
来实现,效果非常好:
this.myService.callDummy()
.finally(() => console.log('Works!'))
.subscribe(result => ...)
但是现在我正在使用一个新版本的 RxJS,其中包含Pipeable operators,但是finally
调用(现在改名为finalize
)从未被执行。很难找到相关信息,我不确定我做错了什么。
combineLatest(
this.route.queryParams,
this.myService.callDummy1(),
this.myService.callDummy2()
)
.pipe(finalize(() => console.log('Does not work!')))
.subscribe(results => ...);
任何帮助都是受欢迎的。
this.route.queryParams
是什么?很可能是你的某个源 Observable 没有完成。 - martin