大家好。
根据两个请求的结果(可能还有更多),需要将响应返回的数组拼接成一个数组:
const getQuriesResult = async () => {
const resultArray = [];
Promise.all([
await axios.get('https://jsonplaceholder.typicode.com/todos/'),
await axios.get('https://jsonplaceholder.typicode.com/users/')
]).then( results => {
results.map( ( item, i, arr ) => {
// тут нужна конкатенация всех массивов из всех запросов в один...
console.log(arr[i].data);
// resultArray.concat(arr[i].data);
} )
});
};
getQuriesResult();
我将非常感谢您的解决方案。
您可以使用该方法来组合数组
.concat。此方法可以接受多个数组进行连接。所以连接代码可能如下所示:
由于它
.concat返回一个新数组,因此必须保存执行结果。await问题中代码中的不完全正确用法也值得关注。这个条目没有多大意义,因为它
Promise.all用于等待 allPromise,但是,在这种情况下,值本身是在参数中传递给它的,而不是Promise。因此,代码可以替换为以下内容:
接下来,使用变量
results.如果需要在合并之前对结果进行预处理,例如要获取某个属性,可以使用 方法
.map最终代码可能如下所示: