Pourquoi est-ce que je reçois une erreur q[num] lors de l'abandon d'un pipeline de file d'attente jQuery ?

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

  •  09-06-2019
  •  | 
  •  

Question

Lors de la création et de l'exécution d'une file d'attente de requêtes ajax avec $.manageAjax, J'appelle ajaxManager.abort();, pour abandonner toute la file d'attente en raison d'une erreur, auquel moment j'obtiens une erreur indiquant : q[num] has no properties (jquery.ajaxmanager.js line 75)

Voici le code d'appel :

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

Il y a 4 requêtes dans la file d'attente, celle-ci est appelée en cas de succès de la première requête, si certains critères sont remplis, la file d'attente doit être abandonnée.

Des idées?

Était-ce utile?

La solution

Il semble que vous ayez moins d'éléments dans q que ce à quoi vous vous attendiez lorsque vous avez commencé à itérer.Votre script essaie peut-être d'accéder à q[q.length], c'est-à-direl'élément après le dernier élément.

Se pourrait-il que votre demande réussie ait été retirée de la file d'attente et que vous ayez une condition de concurrence critique ?Essayez-vous d'abandonner une requête qui a déjà terminé son cycle de vie ?Alternativement, avez-vous commis une erreur stupide comme les gens le font parfois et vous êtes-vous trompé dans la condition de terminaison de votre boucle ?

Juste quelques réflexions, j'espère qu'elles vous aideront.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top