Eu tenho um loop que chama um método que faz coisas de forma assíncrona. Este loop pode chamar o método muitas vezes. Após esse loop, tenho outro loop que precisa ser executado apenas quando todas as coisas assíncronas são concluídas.
Então, isso ilustra o que eu quero:
for (i = 0; i < 5; i++) {
doSomeAsyncStuff();
}
for (i = 0; i < 5; i++) {
doSomeStuffOnlyWhenTheAsyncStuffIsFinish();
}
Não estou muito familiarizado com promessas, então alguém poderia me ajudar a conseguir isso?
É assim que meu doSomeAsyncStuff()
comportamento:
function doSomeAsyncStuff() {
var editor = generateCKEditor();
editor.on('instanceReady', function(evt) {
doSomeStuff();
// There should be the resolve() of the promises I think.
})
}
Talvez eu tenha que fazer algo assim:
function doSomeAsyncStuff() {
var editor = generateCKEditor();
return new Promise(function(resolve,refuse) {
editor.on('instanceReady', function(evt) {
doSomeStuff();
resolve(true);
});
});
}
Mas não tenho certeza da sintaxe.