简体   繁体   English

GET 请求对象作为 Promise.all 输入

[英]GET requests object as Promise.all input

I'm trying to do something like this:我正在尝试做这样的事情:

const { dailies, yesterdayDailies, members } = await Promise.all({
          dailies : api.get(`/daily/${currentDate}`),
          yesterdayDailies : api.get(`/daily/${currentGoalsDate}`),
          members : api.get(`/allMembers`)
        });

console.log(dailies, yesterdayDailies, members);

I need to pass an get requests object then de-structuring it to get their data, but I got:我需要传递一个 get requests 对象,然后对其进行解构以获取他们的数据,但我得到了:

TypeError: Argument of Promise.all is not iterable

It works passing an GET requests array, but I don't want to do that.它可以传递 GET 请求数组,但我不想这样做。 Is there any way to do this?有没有办法做到这一点?

You can destructure an array:您可以解构数组:

const [ 
  dailies, 
  yesterdayDailies,
  members
] = await Promise.all([
  api.get(`/daily/${currentDate}`),
  api.get(`/daily/${currentGoalsDate}`),
  api.get(`/allMembers`)     
]);

See Array destructuring请参阅数组解构

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM