【发布时间】:2021-04-01 21:10:20
【问题描述】:
我有以下代码:
const observable_one = this.loadFromStorage(key) //fast!
const observable_two = this.http.myRequest() //slow!
my_observable =
merge(
observable_one,
oobservable_two
)
现在,当我执行以下操作时,它只会在慢速第二个完成后才提供数据
const data = await my_observable.toPromise()
同时
my_observable.subscribe(data => {
//work with data
})
如预期的那样发射两次。
如何解释? toPromise() 怎么知道有事要发生?
出于某些原因,我更喜欢 await / toPromise() 方法。
【问题讨论】: