gpt4 book ai didi

javascript - RxJs V4 Operator,结合了forkJoin和map

转载 作者:行者123 更新时间:2023-12-01 03:24:52 24 4
gpt4 key购买 nike

我正在尝试找到一种运算符,让我可以一步而不是两步处理 forkJoinmap 执行的操作。

我的输入是一个不同长度的可观察数组,我想等到所有这些都完成,然后根据我可以订阅的可观察输出创建一个计算结果。

我还没有遇到过能够满足这些要求并接受数组作为输入的方法。

下面是一个用例示例:

const observable1 = Rx.Observable.create(
(observer) => {
observer.onNext([1, 2, 3, 4]);
observer.complete();
}
);

const observable2 = Rx.Observable.create(
(observer) => {
observer.onNext([5, 6, 7, 8]);
observer.complete();
}
);

Rx.Observable.magigOperator([observable1, observable2])
.subscribe(
(result) => console.log
);

现在我想要得到的结果是[1,2,3,4,5,6,7,8]的输出;我可以通过使用 forkJoinmap 并运行 flatten 函数来实现它,但我想知道是否有一个运算符可以让我一次性完成此操作。

谢谢。

最佳答案

您不必使用map,您只需将结果选择器函数作为forkJoin的最后一个参数传递即可,例如:

Rx.Observable.forkJoin([observable1, observable2], _.concat)

另请注意,示例中的 observable1observable2 未完成,这会阻止 forkJoin 发出结果。

关于javascript - RxJs V4 Operator,结合了forkJoin和map,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44899724/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com