繁体   English   中英

BaconJS的Pub-Sub

[英]Pub-Sub with BaconJS

我可以使用BaconJS进行pubsub吗? 当我尝试创建并订阅事件流时,第一个观察者将使用该流,而将来的观察者将无法重播该流的历史值。

Bacon.js具有两种类型的Observable

  • EventStream
  • Property

EventStream的订阅服务器仅接收订阅期间发生的事件。 Property的订阅者在订阅时会收到发生的最后一个事件。

在Bacon.js中有多种创建Observables的方法,其中一些创建EventStreamEventStream一些创建Property 您可以根据需要在两者之间轻松转换。

全部记录在这里

作为一个脚注,如果您在RxJS中尝试相同的操作,则会注意到您没有相同的问题。 但不要上当。 您可观察到的RxJS不会挂在最近的事件上,而是将其提供给下一个订阅者。 相反,它正在为每个订户重新创建其基础资源。 这可能很危险。 假设您有一个观察到的命中端点。 该可观察对象的每个订阅者都将使其到达该端点。 仅在调用subscribe时才发生subscribe 当您使用pipe从另一个pipe创建一个可观察到的对象时,也会发生这种情况,因此,如果您想将FRP代码分解为一小段以提高可读性,您将遇到RxJS的冷可观察对象的问题。 (RxJS具有诸如shareReplay类的shareReplay以使可观察的shareReplay变得炙手可热,但要在99%的时间内完成您可能想要的操作,这是额外的工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM