برنامه نویسی

nodejs: async.queue به طور پیش فرض پیام های خطا را نمایش نمی دهد

در حال حاضر ، من در حال ایجاد خزنده وب سفارشی هستم و ساده ترین روش برای اجرای همزمانی استفاده از بسته NPM “Async” است.

در حین برنامه نویسی ، من به این مشکل رسیدم که این برنامه به درستی کار نمی کند ، اما ترمینال هیچ خطایی نشان نداد.

بنابراین من عملکرد صف را در خارج از Async آزمایش کردم و همانطور که انتظار می رفت خطایی را به وجود آورد. اینجا چه اتفاقی می افتد؟

معلوم شد که async.queue به طور پیش فرض خطاها را به خود جلب می کند و شما باید صریحاً آنها را کنترل کنید. این کار را می توان با اضافه کردن پاسخ به خطای خطا به صف انجام داد:

var q = async.queue(function(task, callback) {
    console.log('hello ' + task.name);
    callback();
}, 2);

q.error(function(err, task) {
    console.error('task experienced an error');
});
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

در حال حاضر ، این خیلی مفید نیست اما البته می توانید خطا را به راحتی نمایش دهید:

q.error(function(err, task) {
    console.error(`Async error: ${err}`);
});
حالت تمام صفحه را وارد کنید

از حالت تمام صفحه خارج شوید

آنجا ما آن را داریم:

خطای async: ReferenceError: xxx تعریف نشده است

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا