Как получить синхронизированное и асинхронное отложенное обещание внутри цикла - PullRequest
0 голосов
/ 04 июля 2018

Я использую следующую библиотеку, чтобы задержать обещание:

const prom = require('util').promisify;
const delayedProm = prom(setTimeout);

У меня есть два вложенных цикла внутри '.then (())', а во внутреннем цикле есть условие if. когда это условие if выполнено, я хочу отложить до определенного количество времени, то цикл должен продолжаться нормально. обещание должно быть выполнено и возвращено, когда два цикла завершат итерации.

пожалуйста, дайте мне знать, как добиться этой синхронизации и асинхронности

код :

return func()
.then((execs) => {

for () {
    for () {

        if (condition) {
            dely(interval)
        }
    }
}

return resolvedPromise
})

1 Ответ

0 голосов
/ 04 июля 2018

Чтобы использовать delay, что в цикле, await очень полезно:

return (async function() {
  const execs = await func();

  for () {
    for () {
      if (condition) {
        await delay(interval)
      }
    }
  }
})()

Читать дальше:

Использование async / await с циклом forEach

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...