gpt4 book ai didi

javascript - 将 promise 组合成 promise.all

转载 作者:行者123 更新时间:2023-11-30 19:05:11 25 4
gpt4 key购买 nike

对于 ID 列表,我想进行一些 GET。这些都包裹在一个 promise 中。

let ids = [1, 2, 3]
let promises = [];
for (id in ids) {
promises.push(ApiService.get(url + id))
}
return promises

现在,当对结果调用 promises.all 时,结果按创建它们的顺序排列 (1, 2, 3)。由于这种情况发生在某种 API Controller 中,我宁愿不必将“ids”与 promise 一起返回。而是返回一些东西:

{1: PromiseofId1, 2: PromiseofId2, 3:PromiseofId3}

也许我的思路有问题,我愿意接受建议。

最佳答案

因为您知道顺序,所以之后可以重新关联它们。

let ids = [1, 2, 3]
let promises = [];
for (id in ids) {
promises.push(ApiService.get(url + id))
}
Promise.all(promises).then(results => {
const data = {};
results.forEach( (value, index) => { data[ ids[index] ] = value } );
return data;
});

关于javascript - 将 promise 组合成 promise.all,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59054720/

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