gpt4 book ai didi

javascript - 数组循环中的 AJAX 调用,仅在前一个完成后调用下一个

转载 作者:行者123 更新时间:2023-12-03 07:10:34 24 4
gpt4 key购买 nike

我有一个数组来上传数据,我希望它们一一发送到服务器。我希望在发送下一份之前完成上一份。实际上,在每次回复后我想决定是否发送下一条。

while (packetCount < bulkUploadPackets.length) {
d = d.then(save(bulkUploadPackets[packetCount]))
.then(function(uploadResponse) {
//I want to come here after first call complete
//before second call is fired and so on
packetCount++;
});
}


save: function(modelToSave) {
var defer = $.Deferred();
var self = this;
this.model = modelToSave;
Backbone.sync('create', this, {
success: function(data, textStatus, jqXHR) {
console.log("success" + data);
defer.resolve(data);
},
error: function(response) {
defer.reject(errorObj);
}
});

return defer.promise();
}

最佳答案

您可以使用递归函数并将递归调用放在then中:

(function loop() {
if (packetCount<bulkUploadPackets.length) {
d = d.then(save(bulkUploadPackets[packetCount]))
.then(function(uploadResponse){
//I want to come here after first call complete before second call is fired and so on
packetCount++;
loop();
});
}
})();

关于javascript - 数组循环中的 AJAX 调用,仅在前一个完成后调用下一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36626803/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com