如果有那么重要的话,我正在使用jQuery和jQuery手机制作一个移动应用程序。
我的问题是,以一种或另一种方式执行多个AJAX调用更好吗?
例如,有一个变量来计数所有ajax调用,然后如果该变量最大,则调用完整的函数,如:
var count = 0
$.ajax({
//stuff
}).done({
count++;
if(count == 5){
complete();
}
});
...
还是用这样的链子运行它们更好:
$.ajax({
//stuff
}).done({
$.ajax({
//stuff
}).done({
$.ajax({
//stuff
}).done({
//do complete stuff
});
});
});
应用程序需要进行多个API调用,以收集所需的所有信息,然后再进行操作。是否有不同的性能智慧和“最佳实践”?
发布于 2014-08-28 20:17:50
为你的应用程序做最好的事情。如果您有多个独立的数据集要获取,并且在获取另一个集合之前不依赖于一个集合的数据,那么无论如何都要同时请求所有这些数据。让浏览器担心节流。
此外,不要使用你的计数方法,以确保他们都完成了。jQuery返回一个带有AJAX请求的方便的延迟对象。还没有经过测试和简化,但这应该会让您开始:
$.when (
$.ajax('/data1'),
$.ajax('/data2'),
$.ajax('/data3')
).done(function (data1, data2, data3) {
console.log(arguments);
});
另请参阅:
https://stackoverflow.com/questions/25557223
复制相似问题