javascript - 我需要在 forEach 中调用 api 并将这些响应放入一个数组并返回。但它在 js(javascript) 中作为空数组返回
问题描述
这是我的代码,语言是javascript。
return new Promise(async (resolve, reject) => {
let responses= await axios.get("https://api.surveymonkey.com/v3/surveys/"+id+"/responses/bulk", {
headers: {
'Authorization':config
}
})
resolve(responses.data)
});
}
responses_by_nicknames=async(nicknames)=>{
return new Promise(async (resolve, reject) => {
_.forEach(nicknames, function(value) {
let responses_by_nicknames2=[]
let obj ={"nickname":value.nickname}
console.log(value)
_.forEach(value.surveys,async function(value2) {
Promise.all([responses_by_id(value2.id)]).
then(body => {
responses_by_nicknames2.push(res)
})
})
console.log("!!@@",responses_by_nicknames2)
})
resolve(responses_by_nicknames)
})
}
Console.log 也给出了一个空数组。据我了解,控制台日志和“解决”在调用 API 之前执行。
解决方案
推荐阅读
- java - 如何在 AWS Lambda Java 中解析 Kinesis 数据流
- django - 如何在循环中显示django模板中的总订单
- excel - 在excel中使用数组搜索所有字符串
- android - Android:无法让 adb 在 debian buster 上从 Black BeagleBone 无线工作
- html - 如何将 target="_blank" 赋予 html 中的所有标签
- variables - 如何发送带有变量的 html 电子邮件
- firebase - 如何区分 Flutter 中的 firebase email auth 用户和 firebase google auth 用户?
- uml - 我是否在活动图中使用 foreach 进行 2 次不同的检查检查?
- ios - 使用stackview进行定位
- python - 通过迭代python初始化函数和绑定