我已经知道了
publish
共享一个订阅并返回一个ConnectableObservable
(因此我们必须Connect()
)
Share()
是 publish().refcount()
该Replay
后缀是很明显的,它返回它的最后一次发射/秒。
让我们以一个带有当前和将来订阅的Angular http请求为例:
<p>{{ (person | async)?.id }}</p> //present markup
<p *ngIf=”show”>{{ (person | async)?.userId }}</p> //future markup
如果我不想多个http
请求,可以使用:
publishReplay().Connect()
但是我也可以使用:shareReplay()
,但是我确定这里有一个比另一个更正确使用。
题 :
什么时候应该使用publishReplay
vs shareReplay
?在Http现在和将来的请求方面有什么区别?
注意:为什么没有有关的文档shareReplay
?
publishReplay
允许您控制订阅开始的时间。shareReplay
将在首次订阅时自动启动。
通常,如果将observable用于模板(html文件),请使用shareReplay
。优点是您不必担心取消订阅等。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句