Async: v3.0 dan eachSeries async/menunggu

Dibuat pada 25 Mei 2019  ·  3Komentar  ·  Sumber: caolan/async

Hai,

v3.0 belum membawa dukungan async/menunggu untuk eachSeries? Apakah ada daftar lengkap, fungsi async mana yang sekarang mendukung Promise?

Diharapkan dengan pembaruan ini:

async.eachSeries(items, async (item, callback) => {
            const itemStats = await someFunc(item);
           callback();
});

Saat ini digunakan:

async.eachSeries(items, (item, callback) => {
         (async () => {
            const itemStats = await someFunc(item);
            callback();
          })();
});
question

Komentar yang paling membantu

Cara idiomatis untuk menangani ini dengan async / await adalah:

try {
    await async.eachSeries(items, async (item) => {
            const itemStats = await someFunc(item);

            if(!itemStats) throw new Error('no stats found');
    })
} catch (err)  {
   return res.status(500);
}
return res.status(200).json({success: true})

Semua 3 komentar

Async tidak meneruskan panggilan balik ke fungsi async . Cukup return !

async.eachSeries(items, async (item) => {
            const itemStats = await someFunc(item);
});

Maaf, pertanyaan saya tidak begitu bagus.

Tanpa callback() saya tidak dapat menangani kesalahan setelah:

async.eachSeries(items, async (item) => {
            const itemStats = await someFunc(item);

            if(!itemStats) throw new Error('no stats found');

}, (err) => {
       if(err) return res.status(500);

       return res.status(200).json({success: true})
});

Ini tidak akan berfungsi tanpa panggilan balik atau?

Cara idiomatis untuk menangani ini dengan async / await adalah:

try {
    await async.eachSeries(items, async (item) => {
            const itemStats = await someFunc(item);

            if(!itemStats) throw new Error('no stats found');
    })
} catch (err)  {
   return res.status(500);
}
return res.status(200).json({success: true})

Apakah halaman ini membantu?
0 / 5 - 0 peringkat