You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何此场景下RXJS Subject的next()方法无法发送信息?

关于RxJS Subject中next()方法的疑问解答

你的代码里subject.next(4)实际上是可以正常发送值的,运行这段代码应该会输出:

observerA: 1
observerB: 1
observerA: 2
observerB: 2
observerA: 3
observerB: 3
observerA: 4
observerB: 4

核心逻辑说明

  • Subject本身既是Observable也是Observer:当你执行observable.subscribe(subject)时,from([1,2,3])发出的每一个值都会通过Subject的next方法转发给它的所有订阅者(即observerA和observerB)。
  • subject.next(4)是独立于前面from Observable的操作,只要Subject还有活跃的订阅者,这个调用就会把值推送给所有订阅者,不会因为之前订阅过其他Observable而失效。

如果你没看到4的输出,大概率是运行环境的问题(比如控制台输出被截断、代码执行被中断),或者存在未贴出的其他代码影响了Subject的订阅状态。

内容的提问来源于stack exchange,提问作者Bilal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.22 10:25:04