我有一个小问题。
我有一个以两种方式执行的命令。
runningTests // global array I want to push status to
A)正常
只执行一次代码jStatusFormat.status=fnRunOnce(); // fnRunOnce returns promise
runningTests.push(jStatusFormat);
所以在这之后我有了runingTests = [{status:pending}]
B)组 按需要多次执行for循环中的代码。在fnRunOnce响应中,循环继续进行另一次迭代。
async loop(){ // just loop that is made to iterate after response
jStatusFormat.status=await fnRunOnce(); // fnRunOnce returns promise
runningTests.push(jStatusFormat);
}
所以在这之后我在runingTests = []里面什么都没有,我必须等待等待才能将我的对象变成数组。
如何在等待踢之前推送我的阵列但是已经定义了状态?
我可以在调用函数之前推送到数组,但我需要以某种方式为它分配新的承诺。
如果有什么不清楚请写,我会回复
答案 0 :(得分:0)
const promiseArray = []
async loop(){ // just loop that is made to iterate after response
promiseArray.push(fnRunOnce())
}
jStatusFormat.status = Promise.all(promiseArray)
runningTests.push(jStatusFormat);
答案 1 :(得分:-1)
您应该删除await
。我不确定你的案子还有其他选择。