gpt4 book ai didi

javascript - 如何在 javascript 中更改解析服务器中调用的优先级?

转载 作者:行者123 更新时间:2023-11-30 14:49:28 26 4
gpt4 key购买 nike

我正在构建一个 Web 前端,用户应该能够一次选择一些图片并删除所有图片。所以我正在尝试这样做:

function deletePic(){
var inputs = document.querySelectorAll("input[type='checkbox']");
var PicsForDelete =[];

for(var i = 0; i < inputs.length; i++) {
if(inputs[i].checked == true){
userPics_query.get(inputs[i].id, {
success: function(picForDelete) {
PicsForDelete.push(picForDelete);
alert(picForDelete.id +" " + PicsForDelete[i]);
},
error: function(picForDelete, error) {
alert("Error: " + error.code + " " + error.message);
}
});
}
}

destroyItAll(PicsForDelete);
}

function destroyItAll(PicsForDelete){
if(confirm("Press 'OK' to delete "+PicsForDelete.length +" pictures!")){
Parse.Object.destroyAll(PicsForDelete,{
success: function(myObject) {
alert(PicsForDelete.length + " Images successfully deleted!");
},
error: function(myObject, error) {
alert("Error: " + error.code + " " + error.message);
}
});
}
}

问题是我的脚本总是希望首先销毁它们,然后尝试从我的数据库中取出对象。所以它不会删除任何东西。

所以我的问题是,如何更改解析服务器的优先级调用?

最佳答案

使用 Promises 处理请求。 AJAX 请求是异步的,因此您必须异步处理它

var imgPromises = [];
for(var i = 0; i < inputs.length; i++) {
if(inputs[i].checked == true){
var imgForDelPromise = new Promise(function (resolve) {
userPics_query.get(inputs[i].id, {
success: function(picForDelete) {
resolve(picForDelete);
},
error: function(picForDelete, error) {
alert("Error: " + error.code + " " + error.message);
}
});
});
imgPromises.push(imgForDelPromise);
}
}

Promise.all(imgPromises).then(function (imgs) {
destroyItAll(imgs);
});

关于javascript - 如何在 javascript 中更改解析服务器中调用的优先级?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48399570/

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