2017-09-06 18 views
0

據我所知在舊RxJS 4我可以更改默認調度程序猴修補DefaultScheduler.prototype。這是正確的,或者有更好的方法來做到這一點?如何更改RxJS使用的默認調度程序?

這是可能實現在更新的RxJS 5。因爲正如我在源代碼中看到的那樣,它們使用null作爲默認調度程序,但不能進行猴子修補。例如here

那麼如何更改RxJS使用的默認調度程序? (用於測試,調試或只是爲了好玩)

回答

1

我不認爲有一種方法來設置一個默認的調度在RxJS 5

其中一個原因可能是,這可能會導致意外的行爲。例如看看Observable.range()。在RxJS 5中它不使用任何調度程序,除非您專門設置了一個,請參閱https://github.com/ReactiveX/rxjs/blob/master/src/observable/RangeObservable.ts#L89

因此,如果您可以使用某些默認調度程序,您期望從Observable.range()得到什麼行爲?要始終使用此默認調度程序?那麼其他運營商需要使用一些異步調度呢?它們是否應該將調度程序傳遞給與Observable.range()類似工作的其他運算符,這些運算符的行爲可能與您預期的不同?

+0

是的你是對的,設置默認調度程序沒有任何意義 –

相關問題