根据RxJS 5 MIGRATION.md,看起来像shareReplay()已被删除.
>为什么?
> .publishReplay(1).refCount()是否忠实地复制了这种行为?基本上我需要将最新的单个数据集重播给任何新订阅者.
解决方法:
简短的回答:
引用Blesh先生:
The problem RxJS 5 is trying to solve is that ConnectableObservables
should be “reconnectable”, andrefCount
should return an observable
that is cold until subscribed to, then hot until all subscriptions
have ended, then cold again.
问题在于完成后主体的行为,这阻止了可连接的观察者在完成时重新连接.
答案很长:
https://github.com/ReactiveX/RxJS/issues/453
当前的API似乎是重新连接问题的两个愿景之间妥协的结果.如果有关人员可以对手头的问题进行总结,那将是很好的.我的理解是.publishReplay(1).refCount()应保留旧的行为,即当您的订阅者数量达到0时,源被断开,您无法重放它.但是不要相信我的话,测试它,我在讨论后迷路了.