Rxjs行为主体<;布尔值>;正在发送最后一个值而不是默认值;假;
我在代码中使用RxJS BehaviorSubject作为一个单例实例,这是我迄今为止的观察结果:Rxjs行为主体<;布尔值>;正在发送最后一个值而不是默认值;假;,rxjs,observable,behaviorsubject,Rxjs,Observable,Behaviorsubject,我在代码中使用RxJS BehaviorSubject作为一个单例实例,这是我迄今为止的观察结果: 在第一次订阅时,它会向订阅方发送一个默认的“false”值,我认为这是可以接受的 接下来,当我对它调用Next(true)方法时,它会发送正确的值(true)。这也是意料之中的 现在,当在步骤2之后进行新订阅时,它将发送“true”而不是默认的“false” 这就是我被卡住的地方(步骤3)我意识到BehaviorSubject在创建新订阅时发送最后一个值,但我的逻辑要求我在首次创建订阅时接收“fa
这就是我被卡住的地方(步骤3)我意识到BehaviorSubject在创建新订阅时发送最后一个值,但我的逻辑要求我在首次创建订阅时接收“false”,而不是使用next()发送的最后一个值。我如何实现这一点?如您所述,BehaviorSubject获取初始值(而不是默认值)。对于默认值,可以使用startWith运算符:
const someSubject=new Rx.Subject();
const with somedefault=someSubject.startWith('some-default');
使用somedefault.subscribe(console.log);
someSubject.next('some-other-value');
使用somedefault.subscribe(console.log)代码>