Rxjs:BehaviorSubject 值发射
Rxjs: BehaviourSubject value emission
我有一个行为主体BehaviorSubject<MyModel>(new MyModel)
。根据我所做的阅读,我了解到每当对行为主题进行订阅时,订阅者都会在订阅完成后立即获得默认的 MyModel
对象。
但我对这种情况感到困惑,假设一些 ClassA
订阅了行为主题,然后在对其进行调整后在可观察对象上发出了一个值。 ClassA
发出后,ClassB
订阅主题,现在 ClassB
订阅接收 new MyModel()
对象或主题最后发出的模型。
如果需要进一步说明,请告诉我。
这开始是评论,后来变成了答案:
在您的方案中,ClassB
实例将获得您的 ClassA
实例发出的 MyModel
实例,不是 您创建的实例最初通过 new MyModel()
。
一般来说,BehaviorSubject
会立即触发新订阅的单个最近发出的值 - 这种行为定义了 BehaviorSubject
- 与例如 ReplaySubject
立即发出 all 迄今为止在每个新订阅上发出的值。
请注意,这很容易通过经验证明:
我有一个行为主体BehaviorSubject<MyModel>(new MyModel)
。根据我所做的阅读,我了解到每当对行为主题进行订阅时,订阅者都会在订阅完成后立即获得默认的 MyModel
对象。
但我对这种情况感到困惑,假设一些 ClassA
订阅了行为主题,然后在对其进行调整后在可观察对象上发出了一个值。 ClassA
发出后,ClassB
订阅主题,现在 ClassB
订阅接收 new MyModel()
对象或主题最后发出的模型。
如果需要进一步说明,请告诉我。
这开始是评论,后来变成了答案:
在您的方案中,ClassB
实例将获得您的 ClassA
实例发出的 MyModel
实例,不是 您创建的实例最初通过 new MyModel()
。
一般来说,BehaviorSubject
会立即触发新订阅的单个最近发出的值 - 这种行为定义了 BehaviorSubject
- 与例如 ReplaySubject
立即发出 all 迄今为止在每个新订阅上发出的值。
请注意,这很容易通过经验证明: