RxJS:每当所有主题都发出 true 时发出新值

RxJS: Emit new value whenever all subjects emit true

我有两个科目:networkStateSubjectauthStateSubject

networkStateSubject 发出 boolean 值:

true 如果启用网络连接,

false 如果网络连接被禁用。

authStateSubject 发出 boolean 值:

true 如果用户登录,

false 如果用户已注销。

我需要结合这两个主题,这样 只要它们的两个值都是 true,新值 (void) 就会从组合的 observable.

您可以使用 combineLatestfilter 检查这两个值。

const connectedAndAuth$ = combineLatest([networkStateSubject, authStateSubject])
   .pipe(
      filter(([isConnected, isAuth]) => isConnected && isAuth),
      map(_ => 1) //what do you mean emit a void value?
   );

我会将 combineLatest 与选择器 networkStateSubject && authStateSubject 一起使用,然后过滤真正的选择器