Я совсем не понимаю цель mergeMap
. Я слышал два "объяснения:
- "Это похоже на SelectAll" в LINQ - nope.
- "Ну, это комбинация RxJS
merge
andmap
" - nope (или я не могу воспроизвести это).
Рассмотрим следующий код:
var obs1 = new Rx.Observable.interval(1000);
var obs2 = new Rx.Observable.interval(1000);
//Just a merge and a map, works fine
obs1.merge(obs2).map(x=> x+'a').subscribe(
next => console.log(next)
)
//Who know what - seems to do the same thing as a plain map on 1 observable
obs1.mergeMap(val => Rx.Observable.of(val + 'B'))
.subscribe(
next => console.log(next)
)
Последняя часть с надписью "Кто знает, что" делает не что иное, как карту на obs1
- какой смысл?
Что делает mergeMap
самом деле? Каков пример действительного варианта использования? (Предпочтительно с некоторым кодом)
Статьи, которые мне совсем не помогли (код mergeMap сверху один из них): 1, 2