gpt4 book ai didi

rxjs - 是否有一个 rxjs 运算符来获取可观察值列表并一次订阅 N 直到全部完成?

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

我的应用程序需要多次单独调用 API 以获取数据,但出于性能原因,我不想一次全部转储它们。是否有一个 rxjs 运算符可以让我一次只运行几个然后将所有结果合并为一个?

因此,如果我需要从 ABC...XYZ 获取结果,并且我只想激活 2 个请求,它会订阅 A 和 B。然后如果 B 完成,它将订阅 C。然后 A 完成并订阅 D。并且依此类推,直到所有内容都完成但只有 2 个订阅处于事件状态。

最佳答案

是的, merge() 有一个选项可以做到这一点。 merge的最后一个参数必须是(并发请求数)。

摘自文档:

const timer1 = interval(1000).pipe(take(10));
const timer2 = interval(2000).pipe(take(6));
const timer3 = interval(500).pipe(take(10));
const concurrent = 2; // the argument
const merged = merge(timer1, timer2, timer3, concurrent);
merged.subscribe(x => console.log(x));

关于rxjs - 是否有一个 rxjs 运算符来获取可观察值列表并一次订阅 N 直到全部完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60710793/

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