Rxjs:BehaviourSubject value emission

时间:2016-10-04 04:57:03

标签: angular rxjs behaviorsubject

我有一个行为主题BehaviorSubject<MyModel>(new MyModel)。根据我所做的阅读,我了解到每当订阅行为主题时,订阅者在订阅完成后立即获得默认的MyModel对象。

但是我对这种情况感到困惑,假设有些ClassA订阅了行为主题,然后在调整后发现了一个可观察的值。在ClassA发出后,ClassB订阅了主题,因此订阅ClassB现在会收到new MyModel()对象或主题最后发布的模型。

如果需要进一步澄清,请告诉我。

1 个答案:

答案 0 :(得分:2)

这开头是一个评论,但后来变成了答案:

在您的方案中,ClassB实例将获取MyModel实例发出的ClassA实例,您最初通过{{1}创建的实例}}。

通常,new MyModel()会立即触发新订阅中最近发布的单个值 - 此行为定义为BehaviorSubject - 例如,BehaviorSubject立即发出<到目前为止,每个新订阅都发出的em>所有值。

请注意,这很容易凭经验证明: