【问题标题】:Subject vs AnonymousSubject主题与匿名主题
【发布时间】:2017-02-09 22:55:43
【问题描述】:

RxJS 5 中的SubjectAnonymousSubject 有什么区别? 我搜索了互联网,但没有找到任何关于 AnonymousSubject 的信息。

我在网上找到了一个例子

Subject.create(observer, observable);

查看 rxjs 源代码,我看到它创建了 AnonymousSubject。 你能举个例子什么时候用AnonymousSubject比较好?

【问题讨论】:

标签: javascript rxjs rxjs5


【解决方案1】:

AnonymousSubject 不订阅源 Observable。它只是连接sourcedestination

我不知道 AnonymousSubject 的典型用例是什么样的,但它在 Subject.lift() 内部使用。

另见:RxJs Subject.subscribe method not working as expected

【讨论】:

    【解决方案2】:

    您可以使用AnonymousSubject 定义返回热可​​观察对象的运算符。通常 Observable 也是一个 Subject,例如 BehaviorSubject

    在观察者端,onNext 方法将使用它接收到的值“做某事”并推送到目标主题。例如,观察者可以接受“网络连接是否可用”的布尔值,当网络连接可用时尝试连接到服务器,如果连接尝试成功,则将 true 推送到 BehaviorSubject。这个AnonymousSubject 会在订阅时告诉您您是否已连接到服务器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-03-05
      • 2016-12-27
      • 1970-01-01
      • 2016-05-29
      • 2023-04-01
      • 2017-04-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多