Dans le code ci-dessous, je veux l'exécution séquentielle de la méthode saveBulkUploadSinglePacket dans la boucle while, ce qui signifie traiter le paquet suivant après l'achèvement du paquet courant. Comment y parvenirexécution séquentielle de Jquery Defers
var saveBulkUploadSinglePacket = function(){
while (packetCount<=bulkUploadPackets.length){
$.when(saveBulkUploadSinglePacket(modelToSave)).done(function(arguments){
saveBulkUploadPackets.push(arguments);
packetCount++;
});
}
return saveBulkUploadPackets;
}
var saveBulkUploadSinglePacket = function(modelToSave){
var defer = $.Deferred();
$.when(new SaveBulkUpload().save(modelToSave)).done(function(arguments){
defer.resolve(arguments);
}).fail(function(errorObj){
defer.reject(errorObj);
});
return defer.promise();
}
il se plaint lastPromise.resolve n'est pas une fonction . – Ahmad
oublié d'enregistrer les promesses séquentielles dans le 'lastPromise' var; essayez le code mis à jour –
ne fonctionne pas :(.. – Ahmad