有没有办法确保订阅者更新的顺序得到保证?
我有一个 hot observable,我的第一个订阅者做了一些同步工作来更新一个变量,然后我的下一个订阅者必须初始化一个服务(只有一次!),并且只有在确保设置了该变量之后!
它看起来像这样:
import App from './App'
var appSource = App.init() // gets the hot observable
// our second subscriber
appSource.take(1).subscribe(() => {
// take 1 to only run this once
nextService.init()
})
App.init
看起来像这样:
...
init() {
var source = this.createObservable() // returns a hot interval observable that fetches a resource every few minutes
// first subscriber, updates the `myVar` every few minutes
source.subscribe((data) => this.myVar = data)
return source
}
...
这目前有效,但我不确定它是否会始终遵循 100% 的顺序。
编辑:
正如我所听说的,订阅者将被调用 FIFO。所以顺序有些保证。