[英]shareReplay in RxJS 5
根據RxJS 5 MIGRATION.md ,看起來像shareReplay()
已被刪除。
.publishReplay(1).refCount()
忠實地復制了這種行為? 基本上我需要將最新的單個數據集重播給任何新訂閱者。 快樂新聞, shareReplay()
又回到了RxJS 5.4.0: https : //github.com/ReactiveX/rxjs/blob/892700dd4f5d5e5f9ae9276ede32208f4390c5e9/CHANGELOG.md#540-2017-05-09
簡短的回答:引用Blesh先生:
RxJS 5試圖解決的問題是ConnectableObservables應該是“可重新連接的”,並且
refCount
應該返回一個冷卻直到訂閱的observable,然后熱,直到所有訂閱都結束,然后再冷。
問題在於完成后主體的行為,這阻止了可連接的觀察者在完成時重新連接。
答案很長: https : //github.com/ReactiveX/RxJS/issues/453
當前的API似乎是重新連接問題的兩個願景之間妥協的結果。 如果有關人員可以對手頭的問題進行總結,那將是很好的。 我的理解是.publishReplay(1).refCount()
應保留舊的行為,即當您的訂閱者數量達到0時,源被斷開,您無法重放它。 但是不要相信我的話,測試它,我在討論后迷路了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.