Per*_*ror 3 rxjs rx-java reactivex
我正在为我的应用制作启动画面。我希望它至少持续N秒,然后才能转到主屏幕。
我有一个Rx变量myObservable,它从服务器或本地缓存中返回数据。如何强制myObservable在完成至少N秒?
myObservable
// .doStuff to make it last at least N seconds
.subscribe(...)
Run Code Online (Sandbox Code Playgroud)
您可以forkJoin用来等待两个Observable完成:
Observable.forkJoin(myObservable, Observable.timer(N), data => data)
.subscribe(...);
Run Code Online (Sandbox Code Playgroud)
对于不具有不建议使用的结果选择器功能的RxJS 6:
forkJoin(myObservable, Observable.timer(N)).pipe(
map(([data]) => data),
)
.subscribe(...);
Run Code Online (Sandbox Code Playgroud)
编辑:如注释中所述,Observable.timer(N)仅一项参数将在发出一项后完成,因此无需使用take(1)。
| 归档时间: |
|
| 查看次数: |
780 次 |
| 最近记录: |