我想等到承諾完成後再繼續執行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){}/*把你的代碼放在這裏* /})//不在這裏) –