مهلا،
الإصدار 3.0 لا يجلب الدعم غير المتزامن / ينتظر الدعم لكل سلسلة حتى الآن؟ هل هناك قائمة كاملة ، ما الوظائف غير المتزامنة التي تدعم Promise الآن؟
متوقع مع هذا التحديث:
async.eachSeries(items, async (item, callback) => {
const itemStats = await someFunc(item);
callback();
});
قيد الاستخدام حاليًا:
async.eachSeries(items, (item, callback) => {
(async () => {
const itemStats = await someFunc(item);
callback();
})();
});
لا يقوم Async بتمرير عمليات الاسترجاعات إلى وظائف async
. ببساطة return
!
async.eachSeries(items, async (item) => {
const itemStats = await someFunc(item);
});
آسف ، سؤالي لم يكن جيدًا.
بدون رد الاتصال () لا يمكنني معالجة الخطأ بعد:
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})
});
هذا لن يعمل بدون رد أو؟
الطريقة الاصطلاحية للتعامل مع هذا باستخدام async
/ await
ستكون:
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})
التعليق الأكثر فائدة
الطريقة الاصطلاحية للتعامل مع هذا باستخدام
async
/await
ستكون: