gpt4 book ai didi

RxJS 从 mergeMap 返回值数组

转载 作者:行者123 更新时间:2023-12-02 02:33:32 24 4
gpt4 key购买 nike

我有一个可观察的流。第一个运算符是一个 mergeMap,它返回一个可观察值数组。然后我必须有第二个 mergeMap 来从第一个 mergeMap 的返回中获取最终值。我觉得第二个 mergeMap 应该是不必要的,但找不到解决方法。

示例:

source$.pipe(
mergeMap(() => [of(1), of(2), of(3)]),
mergeMap((val) => val)
)

这就是我最终拥有的。第二个 mergeMap 的存在只是为了订阅第一个 mergeMap 的输出。如果没有它,我的输出是可观察的(即 of(1) 而不是实际值 1)。有没有办法绕过第二个 mergeMap?

最佳答案

您可以使用merge mergeMap 运算符中的函数,用于将 Observables 数组中的所有 observable 合并为一个 observable,当任何底层 observable 发出时,该 observable 就会发出。

其代码片段为:

source$.pipe(
mergeMap(() => merge(...[of(1), of(2), of(3)])),
)

关于RxJS 从 mergeMap 返回值数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64671169/

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