Я создаю приложение Angular2, поэтому привыкаю к Observables и Reactive Extensions в целом. Я использую TypeScript и rxjs.
Теперь у меня есть наблюдаемая или, если хотите, поток массива некоторых объектов. Скажем, Человек-объекты. Теперь у меня есть два других потока объектов Person, и я хочу их объединить, чтобы получить поток, который всегда актуален:
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, а не тот, который только что испускал personRemoved-stream.
Есть ли способ, встроенный в rxjs, чтобы добиться такого поведения?