Rxjs, combineAll()
Помогите разобраться, пожалуйста, как работает следующий код:
of("a", "b", "c")
.pipe(
map(x => interval(2000).pipe(take(2))),
combineAll()
)
.subscribe(vl => console.log(vl));
// Result:
//[0, 0, 0]
//[1, 0, 0]
//[1, 1, 0]
//[1, 1, 1]
Как я понимаю - на первом этапе для каждого эмита ("a", "b", "c") с интервалом в 2 сек выбирается 2 первых значения (0,1).
Что происходит дальше, как вообще формируется массив?
След. этап - combineAll берет последние значения обзервеблов и эмитит в сабскрайб массив этих последних значений.
Запуталась вкрай, помогите.