我想为数组中的每个项目进行Ajax调用,当所有调用都返回时,我想调用另一个函数。
为了使事情变得更复杂,我正在使用Papa Parse来进行Ajax调用。
这是我的代码:
getCsvData: function(url) {
var _this = thisl
Papa.parse(url, {
download: true,
complete: function(data) {
return data;
}
});
},
getBackendData: function() {
var _this = this;
var results = {};
_this.numeratorIds.forEach(function(d) {
var url = _this.constructUrl(d.id, d.query_type);
results[url] = _this.getCsvData(url);
});
// When everything is finished...
// call another function to render the data.
},
我不确定这是对的 - 有更好的办法吗?
注意:我意识到执行多个Ajax调用比链接URL参数和进行单个调用要慢,但我认为在我的情况下这是正确的做法 - 我正在使用一个非常大的非常静态的数据库,这意味着我可以更频繁地缓存这些查询。
答案 0 :(得分:0)
为什么你试图做多个AJAX调用而不是控制器返回你想要的对象列表。然后,您将不需要进行多个Ajax调用。你需要的只是一个Ajax,你将拥有你想要的对象列表,然后你可以将这些数据绑定到你的视图。
希望它有意义。