Почему операторы tap
и map
внутренней наблюдаемой не вызываются? combineLatest
следует подписаться на наблюдаемые, которые он получает в obsArr
, верно? Почему эта подписка не запускает эти операторы?
const obsArr = [];
[[1, 2], [3, 4], [5, 6]].map(arr => {
const observable = from(arr);
observable.pipe(
tap(item => {
// this is NOT called
console.log('tap', item)
}),
map(item => {
// this is NOT called
return item * -1;
})
);
obsArr.push(observable);
});
combineLatest(obsArr).subscribe(latestValues => {
console.log(latestValues);
// LOG: [2, 4, 5]
// LOG: [2, 4, 6]
});
Рабочий стек стека: https://rxjs-y2h4rn.stackblitz.io
Спасибо за объяснение!