仅从可观察对象获得最新值

问题描述 投票:0回答:1

我正在使用Angular 9 / rxjs 6.5.2

当我订阅Observable时,我只想获取最新值,我想要的是[[latest而不是last,因为对于最后一个,它将等待直到Observable完成,但就我而言,我现在想获取最新的。]

我的代码:

PS:您可以在此链接中直接对其进行测试:https://stackblitz.com/edit/pjreww

const observable = new Observable(subscriber => { subscriber.next(1); subscriber.next(2); subscriber.next(3); setTimeout(() => { subscriber.next(4); subscriber.complete(); }, 1000); }); observable .pipe( //some pipe to make me take the latest value only ) .subscribe({ next(x) { console.log('got value ' + x); }, });

想要的输出:

3 4

实际输出

1 2 3 4
我正在使用Angular 9 / rxjs 6.5.2,当我订阅Observable时,我只想获取最新值,我想要最新而不是最后一个,因为对于最后一个,它将等待直到.. 。
angular rxjs rxjs6 angular9
1个回答
1
投票
您可以使用shareReplay(1),它将始终仅重播发出的最新值:
© www.soinside.com 2019 - 2024. All rights reserved.