如果任何一个 observables 在未知数量的 observables 中返回 true,如何返回 true

雷米

我有一个函数,其中可能定义了许多未知的可观察值:


class Foo {

  show$(multipleObservables$: Observable<boolean>[]): void {
    // ...
  }
}

在我使用这个类的地方,可观察的数量各不相同。它可以是 1,但也可以是 3:

const observableOne$ = of(false);
const observableTwo$ = of(true);
const observableThree$ = of(false);

const observables$ = [observableOne$, observableTwo$, observableThree$];

Foo.show$(observables$);

我如何编写 show$ 函数以在任何 observable 为 true 时返回 true,或者在它们全部为 false 时返回 false?

读过这篇文章,但前提是你已经知道可观察的数量。有没有一种方法可以在不知道正手观察的情况下创建这个函数?

马丁

这将取决于源 Observables 是否会完成。如果你打算只使用of()你可以这样做:

show$(multipleObservables$: Observable<boolean>[]) {
  return forkJoin(multipleObservables$)
    .pipe(
      map((results: boolean[]) => results.some(Boolean)),
    );
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

等待未知数量的 observables 完成

如何比较Observables的结果并返回其中之一

使用Observables“返回”异步数据

如果某个元素是列表中的最后一个元素,是否有任何函数返回True?

如何合并mergeMap observables调用并只为整个observable返回一个值

如何在第一个 observable 上组合多个 observables 并在方法中作为新的 observable 返回

如何迭代返回rxjs observables的函数

我如何定义一个函数,如果迭代器中的每个值都为true,则返回true?

如果python中的二维数组至少有一个True,如何返回True

如果另一个函数没有返回错误,If 语句如何返回 True?

RxJS在订阅中订阅不同数量的Observables

由 pipe() 中的 switchMap() 返回的扁平化的 observables 数组

我应该如何实现一个在 C++ 中接受未知数量参数的数组构造函数?

如果多个列中的任何一个出现单词,如何分配TRUE或FALSE?

rxjs:从Observables集合中获取最后一个值

如何同时等待多个条件,直到其中任何一个返回 true

如何从未知数量的数字中打印 2 个最小的数字

如何创建VBA循环以基于一列中未知数量的重复值对总数求和?

如果BASH中只有三个变量为True,如何返回True?

即使一个单词匹配,如何返回 True ?

使用 RXJS 一起返回两个 observables 的结果

使用返回值启动未知数量的并行任务

在rxJava中压缩9个以上Observables

如果数字是素数,如何返回true或false

如果语句返回true

如果总是返回true

如果返回TRUE,则IF返回FALSE

如果我们不订阅HttpClient请求,该请求返回angular中的observables,会发生什么情况

如何在Python动画函数中返回未知数量的对象