RxJS flatMapLatest сглаживает последнюю (только одну) вложенную Observable. У меня есть прецедент, где я не хочу flatMap (который выравнивает все вложенные Observables из прошлого), и я не хочу flatMapWithConcurrency (потому что он поддерживает старые Observables, а не последние Observables), поэтому я хочу, чтобы flatMapLatestTwo или в некоторой версии flatMapLatest, где вы можете указать максимальное количество одновременных вложенных наблюдаемых, например flatMapLatest(2, selectorFn)
.Как реализовать RxJS flatMapLatestTwo
Вот мой желаемый результат (_X
относится к вложенным наблюдаемых X
и eX
ссылается на X-й onNext события):
_0e0
_0e1
_1e0
_0e2
_1e1
_2e0
_1e2
_2e1
_3e0
_2e2
_3e1
_4e0
_3e2
_4e1
_3e3
_4e2
_4e3
Это то, что производит flatMapLatest:
_0e0
_0e1
_1e0
_1e1
_2e0
_2e1
_3e0
_3e1
_4e0
_4e1
_4e2
_4e3
Я d предпочитает решение, которое использует существующие операторы вместо реализации этого низкого уровня.
Я попытался 'map' наблюдаемым (который дает мне наблюдаемую-из-наблюдаемых характеристик), то bufferWithCount (2,1), а затем flatMapLatest на том, но я получил некоторые странные повторения и упущения. –