1
RxJS版本掃描:5.5.2組合減少和與對象
我有一個數組const v = [1, 2, 3];
我希望能夠創建此數組中的主體和行爲像一個可觀察到它消耗1,2,3的值。之後,我想要像一個主題。
這是我遇到麻煩的地方。我需要在每個主題中附加時間上,則初始值v = [1, 2, 3]
使用reduce
另一個值使用scan
下面是代碼:
const v = [1, 2, 3];
const sub = new Subject<number>();
const observable = sub.pipe(
startWith(0),
concatMap(x => from(v)),
scan((a, b) => { // or reduce
return a + b;
}, 0),
);
observable.subscribe(x => console.log(x));
如果我使用scan
這兒,這是印在控制檯
1
3
6
我想要打印的只是最後一個值6
。只有在主題完成後才能替代scan
和reduce
(這樣我以後不能再發送任何值)。
然後每當主題發送一個值sub.next(4);
來打印10
等等。