Rxjs:Observable.combineLatest 与 Observable.forkJoin

标签 rxjs rxjs5

我想知道 Observable.combineLatestObservable.forkJoin 之间有什么区别?

据我所知,唯一的区别是 forkJoin 期望 Observables 完成,而 combineLatest 返回最新值。

最佳答案

forkJoin 不仅要求完成所有输入可观察量,而且还返回一个可观察量,该可观察量生成单个值,该值是输入可观察量生成的最后值的数组。换句话说,它会等到最后一个输入可观察完成,然后生成一个值并完成。

相比之下,combineLatest 返回一个 Observable,一旦所有输入 observable 都生成了至少一个值,每次输入 observable 都会生成一个新值。这意味着它可能具有无限值并且可能不完整。这也意味着输入可观察量不必在生成值之前完成。

关于Rxjs:Observable.combineLatest 与 Observable.forkJoin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41797439/

相关文章:

javascript - 范围内可观察的随机数序列

javascript - 为什么 observable 没有被订阅

angular - 使用来自 Observable 的 startWith 创建 Observable

javascript - 为什么可观察性重新订阅热门

javascript - 从外部访问源 observable Rx.Observable.prototype

testing - 当使用我自己的 observable 而不是使用 createHotObservable 方法创建一个时,RxJS 大理石测试失败

typescript - 类型错误 : Cannot read property 'Symbol(Symbol.iterator)' of undefined

javascript - 在 RxJS 6 中重置 ReplaySubject

rxjs - 接收 : Buffer with variable back pressured buffer time

typescript - rxjs : Observable. of(...).delay 不是函数