我想等到承诺完成后再继续执行for循环。请看下面的类似代码。现在,循环将运行多次并运行所有的承诺,但这不适合我的应用程序。我需要程序运行while循环,运行promise,等到解析完成,检查10秒是否已经通过,或者已经设置了用户变量,如果没有,再次运行。如何等到承诺完成后才继续循环
var p = promiseReturnedFromAFunction();
var time = new Date().getTime();
var user = 'undefined';
while(user === 'undefined' && Math.abs(time - new Date().getTime()) < 10000) {
p.then(() => {
if(somecondition) {
user='user';
break;
}
})
//Code should wait here until the above promise is done before continuing
}
如果有人可以帮助我,这将不胜感激。
你可以把你的代码放在回调里面吗? –
你能详细解释一下吗?我应该在哪里放置什么代码? – AllAnimals
p.then(()=> {if(somecondition){}/*把你的代码放在这里* /})//不在这里) –