gpt4 book ai didi

angular - 合并连续 Observables 结果的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-04 05:45:39 26 4
gpt4 key购买 nike

假设我有一个 Observable,它会生成一个由 3 个数组组成的对象,如下所示:

    results = {
type1: [...],
type2: [...],
type3: [...],
};

是否有一个 rxjs 运算符,它允许我组合多个可观察量及其结果,以获得如下所示的最终结果:

    results1 = {
type1: [1, 2],
type2: ['ab', 'cd'],
type3: ['foo', 'bar'],
};

results2 = {
type1: [3, 4, 5],
type2: ['ef', 'gh', 'ij'],
type3: ['ban', 'jo', 'vi'],
};

final_results = {
type1: [1, 2, 3, 4, 5],
type2: ['ab', 'cd', 'ef', 'gh', 'ij'],
type3: ['foo', 'bar', 'ban', 'jo', 'vi'],
};

???

根据记录,我正在使用 Angular 2+ 和 typescript,并且我想继续使用 Observable 流和 rxjs 运算符,但根据他们的文档,我不确定它们是否可以执行“深度合并”之类的操作??'

感谢您的帮助

最佳答案

您正在寻找扫描运算符(operator):

https://www.learnrxjs.io/operators/transformation/scan.html

它类似于 reduce运算符,但reduce运算符只会在流末尾发出。扫描操作符每次都会发出中间值。

关于angular - 合并连续 Observables 结果的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54007829/

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