我终于理解了promise并实现了它,并且查询数据库的所有ajax请求都在使用它。现在我想显示某种加载进度动画,没什么好看的。
根据MDN文档here
他们声明Promise处于以下某种状态:
我想知道如何利用待处理状态来显示我的动画。
承诺的例子:
function functionName(param1,param2,...){
return new Promise(function (resolve, reject) {
$.ajax({
// ajax param here
success: function (data, status) {
resolve(data);
return;
},
error: function (xhr, desc, err) {
console.log(xhr);
console.log("Details: " + desc + "\nError:" + err);
return;
}
});
});
};
使用它的功能;
$(document.body).on("event", "element", function (event) {
event.preventDefault();
var data = functionName(param1,param2,...).then(function (response) {
data = response;
// handeling data from Promise function
}, function (error) {
console.error("ERROR !", error);
return;
});
});
所以我想知道我们如何利用待处理状态来显示动画?
答案 0 :(得分:1)
您可以修改代码,如下所示
$(document.body).on("event", "element", function (event) {
event.preventDefault();
var data = functionName(param1,param2,...).then(function (response) {
// End your animation here like hide progress bar
data = response;
// handeling data from Promise function
}, function (error) {
// End your animation here like hide progress bar
console.error("ERROR !", error);
return;
});
// Start your animation here like show progress bar