لماذا أتلقى خطأ q[num] عند إحباط خط أنابيب قائمة انتظار jQuery؟

StackOverflow https://stackoverflow.com/questions/30342

  •  09-06-2019
  •  | 
  •  

سؤال

عند إنشاء وتنفيذ قائمة انتظار طلبات ajax باستخدام $.manageAjax, ، أنا أتصل ajaxManager.abort();, ، لإلغاء قائمة الانتظار بأكملها بسبب حدوث خطأ، وفي ذلك الوقت تظهر لي رسالة خطأ تفيد: q[num] has no properties (jquery.ajaxmanager.js line 75)

هنا هو رمز الاتصال:

var ajaxManager = $.manageAjax({manageType:'sync', maxReq:0});
// setup code calling ajaxManager.add(...)

// in success callback of first request
ajaxManager.abort(); <-- causes error in jquery.ajaxManager.js

هناك 4 طلبات في قائمة الانتظار، يتم استدعاؤها في نجاح الطلب الأول، إذا تم استيفاء معايير معينة، يجب إلغاء قائمة الانتظار.

أيه أفكار؟

هل كانت مفيدة؟

المحلول

يبدو أن لديك عددًا أقل من العناصر في q مما كنت تتوقعه عندما بدأت التكرار.ربما يحاول البرنامج النصي الوصول إلى q[q.length]، أي.العنصر بعد العنصر الأخير.

هل يمكن أن يكون طلبك الناجح قد تم طرحه من قائمة الانتظار، ولديك حالة سباق؟هل تحاول إلغاء طلب أكمل دورة حياته بالفعل؟وبدلاً من ذلك، هل ارتكبت خطأً سخيفًا كما يفعل الناس أحيانًا، وأخطأت في شرط إنهاء الحلقة؟

مجرد أفكار قليلة، وآمل أن تساعد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top