我有一个for循环调用一个异步函数。我需要这个函数然后在for循环结束时调用一个回调函数,但是只有当所有的异步函数都返回结果时才会调用回调函数。我试过这个:for循环退出回调完成之前
for(var i = 0; i < vaccinsCount; i++){
getVaccinAddress(i, address, provider, function(result){
if(result.success){
console.log("result:" + result.values);
vaccines.push(result.values);
} else {
callback({success: false, message: result.message});
}
});
}
callback({success: true, values: vaccines});
取而代之的是代码进入for循环,然后调用然后异步函数然后直接退出。我怎么能解决这个问题?
getVaccinAddress是执行服务器调用的异步函数。
编辑
我使用的NodeJS,因此解决的办法就是再使用蓝鸟,但是我对如何与蓝鸟实现这个不知道。
搜索,以便与谷歌的环异步 – mplungjan
我已经和我还是不要不明白我怎么能使它工作。 –
你的代码不完整,getVaccinAddress函数中有什么? –