在marionetteJS中同时进行多个API调用

在marionetteJS中同时进行多个API调用,api,marionette,Api,Marionette,我使用ForcastAPI获取天气数据。在木偶中,我使用模型将API rulRoot定义为 var weatherApi = Backbone.Model.extend({ defaults:{ lat:"", lng:"", timeStamp:"", units:"", response:"" },

我使用ForcastAPI获取天气数据。在木偶中,我使用模型将API rulRoot定义为

var weatherApi = Backbone.Model.extend({
        defaults:{
                lat:"",
                lng:"",
                timeStamp:"",
                units:"",
                response:""
        },
        urlRoot: function(){
                return '/api/web/forecast?lat='+ this.get("lat") + '&long=' + this.get("lng") +'&time=' + this.get("timeStamp") + '&units='+this.get("units");
        }
});
然后我实例化为

weatherApiGddObj = new weatherApiInstance();

我使用这个对象获取api调用响应。现在我想做的是同时进行多个api调用,比如从今天到接下来的30天,所以如果我一个接一个地调用,那么要得到所有响应需要很多时间。我怎么用木偶来做这个

最好有一种方法,允许您在一次请求中获取天数范围内的数据。但根据你的情况,我会这样做:

var-date,startDate=someTimestamp,day=86400,
结束日期=开始日期+第30天,承诺=[];
对于(日期=开始日期;日期<结束日期;日期+=天){
weatherApiGddObj.set('时间戳',日期);
promises.push(weatherApiGddObj.fetch());
}
$.when.apply($,promissions).done(函数(){
var data=Array.slice.call(参数);
控制台日志(数据);
});

我建议您阅读关于

木偶网不扩展BB机型功能的内容。它可以升级视图并添加顶级架构块。这不是一个木偶问题。它应该被标记为主干。另外,您是否不知道javascript XMLHTTPRequests对象(又称AJAX调用)是如何工作的?它是异步的,所以在发送另一个之前,您不会等待其中一个完成。只需一个接一个地发送它们,然后异步处理响应。如果您需要所有答案,请使用。