【发布时间】:2017-02-24 02:04:14
【问题描述】:
我正在构建一个 Angular2 应用程序,因此我已经习惯了整个 Observables 和 Reactive Extensions。我正在使用 TypeScript 和 rxjs。
现在我有一个可观察的,或者如果你愿意的话,我有一个流,包含一些对象的数组。让我们说人对象。现在我有另外两个 Person-objects 流,并且想将它们组合起来,所以我得到一个始终是最新的流:
var people$ = getPeople(); // Observable<Person[]>
var personAdded$ = eventHub.personAdded; // Observable<Person>;
var personRemoved$ = eventHub.personRemoved // Observable<Person>;
var allwaysUpToDatePeople$ = people$.doSomeMagic(personAdded$, personRemoved$, ...);
如果 people-stream 发出一个数组,比方说 5 个人,然后 personAdded-stream 发出一个人,allPeople-stream 将发出一个 6 个数组。 如果 personRemoved-stream 发出一个人,allPeople-stream 应该发出一个 Person-objects 数组,而不是 personRemoved-stream 刚刚发出的那个。
rxjs 中是否有内置方法来获得这种行为?
【问题讨论】:
标签: angular rxjs rxjs5 reactive-extensions-js angular2-observables