У меня есть цикл, который вызывает метод, выполняющий асинхронно. Этот цикл может вызывать метод много раз. После этого цикла у меня есть еще один цикл, который нужно выполнить, только когда все асинхронные вещи будут выполнены.
Итак, это иллюстрирует то, что я хочу:
for (i = 0; i < 5; i++) {
doSomeAsyncStuff();
}
for (i = 0; i < 5; i++) {
doSomeStuffOnlyWhenTheAsyncStuffIsFinish();
}
Я не очень хорошо разбираюсь в обещаниях, может ли кто-нибудь помочь мне в этом?
Вот как doSomeAsyncStuff()
себя ведет я:
function doSomeAsyncStuff() {
var editor = generateCKEditor();
editor.on('instanceReady', function(evt) {
doSomeStuff();
// There should be the resolve() of the promises I think.
})
}
Может мне надо сделать что-то вроде этого:
function doSomeAsyncStuff() {
var editor = generateCKEditor();
return new Promise(function(resolve,refuse) {
editor.on('instanceReady', function(evt) {
doSomeStuff();
resolve(true);
});
});
}
Но я не уверен в синтаксисе.