问题标签 [behaviorsubject]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 使用 rxjs5 获取 BehaviorSubject 当前值的简单方法
以前在rxjs4中有一个名为 BehaviorSubject 的方法:(
getValue()
doc here )。
rxjs5中不再存在此方法。
因此,我发现获得 BehaviorSubject 值的唯一解决方案是:
此代码同步运行(我不完全理解为什么,但确实如此......)并获取值。它可以工作,但它不如getValue()
存在时那么干净:
为什么getValue()
在rxjs5中被删除,这个问题最干净的解决方案是什么?
angular - Rxjs 在 behaviorsubject 中包含深度嵌套的对象
我开始在 Rxjs 中使用 BehaviorSubject,但在这方面的经验有限。到目前为止,我能够获取组件中的根级参数,但访问嵌套对象会导致“无法读取未定义的属性 x”。
课程:
篮子后端服务
篮子服务
模板(片段)
如果我删除深度嵌套对象的引用,我会返回预期的结果。
我正在尝试使用 BehaviorSubject 来更新几个组件,但不确定这是否是最好的解决方案!
angular - BehaviorSubject Observable 在 Angular 2 RC4 中不起作用
我仍在使用 Angular 2 RC4,因为我在使用 RC5 时遇到了其他问题并让 HTTP 在那里工作。在这种情况下,我尝试使用 BehaviorSubject observable 来更新我在 app.component.html 中使用的布尔变量,以便仅在用户成功登录时显示数据(使用 *ngIf)。我的应用程序在我部署在 Eclipse Neon 中的 Tomcat 8 服务器上运行良好。我以为我为此正确遵循了其他示例,但我在 Chrome 中不断收到此错误-TypeError: Cannot read property 'next' of undefined
你能帮助澄清我错过了什么吗?
auth.service.ts
app.component.ts
main.ts
Chrome 控制台中的错误:
也许错误是我正在使用的 HTML 语法。
javascript - BehaviorSubject vs Observable?
我正在研究 Angular RxJs 模式,但我不明白 aBehaviorSubject
和 an之间的区别Observable
。
据我了解,aBehaviorSubject
是一个可以随时间变化的值(可以订阅并且订阅者可以接收更新的结果)。这似乎与Observable
.
你什么时候使用 an Observable
vs a BehaviorSubject
?BehaviorSubject
使用 a over an是否有好处,Observable
反之亦然?
angular - Angular2 + RxJS BehaviorSubject 订阅不适用于所有组件
我正在尝试在我的组件之间进行某种通信,因此我在组件中使用具有 BehaviorSubject 和 Subscription 的服务,如下所示:
服务(与问题相关的代码):
组分 A:
B组份:
如果组件 B 是组件 A 的子组件,这是完美的工作,但是如果 A 是根组件并且 B 在其内部<router-outlet>
(或相反),则订阅没有收到任何内容,我只能进入sent
控制台。
我究竟做错了什么?
angular - Rxjs: BehaviourSubject 值发射
我有一个行为主题BehaviorSubject<MyModel>(new MyModel)
。根据我所做的阅读,我了解到,只要对行为主体进行订阅,订阅者就会MyModel
在订阅完成后立即获得一个默认对象。
但是我对这种情况感到困惑,假设有些人ClassA
订阅了行为主题,然后在对其进行调整后在可观察对象上发出了一个值。在ClassA
发出之后,ClassB
订阅主题,所以现在ClassB
订阅接收new MyModel()
对象或主题最后发出的模型。
如果需要进一步澄清,请告诉我。
java - 出错后重启 BehaviorSubject
想要的行为:
有了这个输出:
我的问题是onNext
afteronError
不起作用(这是有意的,遵循RxJava
规则),但我需要对错误有弹性,同时还要将它们传递到流中(向用户显示一些反馈)。
有没有办法做到这一点?
angular - Angular 2.0.1 AsyncPipe 不适用于 Rx 主题
AsyncPipe 与 BehaviorSubject 一起使用,但我不想用空数据初始化我的服务,因此我使用 Subject intead。
问题是 NgFor 和 asyncPipe 不适用于 Subject,这是一个问题吗?
这有效:
零件:
模板
这不起作用:
零件
模板
angular - 如何在 Angular 2 中使用 getter 和 setter 实现 BehaviorSubject
我正在尝试在我的 LoginService 中实现isLoggedIn
类型的布尔值BehaviorSubject
以及 getter 和 setter 函数,以将值作为 Observable 获取/通过其 BehaviorSubject 正确设置变量。这是有效的,但是它在 TSLint 中引发了两个关于“类型不可分配”和“重复标识符”的错误。在没有 TSLint 抱怨的情况下定义它的正确方法是什么。
这是上述代码的精简版:
android - BehaviorSubject 处理中的 BehaviorSubject
场景
我有一个区域列表,我想从服务器获取每个区域中的所有项目。所以,我决定用它来试试。我不知道我是不是“疯了”。这就是我所做的:BehaviorSubject
它所做的只是挂起,就像我这样做时根本没有运行