例如,在某件事之后我做了:
render: function () {
new FavoritesView({el: $A.el('#mm'));
new FeedView({el: $A.el('#at_view'));
new AccountView();
}
创建3个视图和3个ajax请求。以前我使用的框架在合并请求时只使用了一个框架。
有没有办法在Backbone中执行此操作?
答案 0 :(得分:0)
您没有提供大量详细信息或代码,但如果有单个请求检索多个对象(根据您以前的框架),那么该请求很可能不是真正的REST接口。默认情况下,Backbone期望为其模型(以及集合)使用REST接口(Ruby风格),因此无法实现您想要的开箱即用。&#34; <#34; < / p>
然而,Backbone很容易扩展,你当然可以覆盖模型/集合&#39; fetch
方法使用非REST API。更好的方法可能是为三个模型/集合创建自己的AJAX请求,然后在创建时将适当的数据提供给模型/集合,从而完全避免使用Backbone fetch
。类似的东西:
render: function() {
$.getJSON("url/to/aggregated/data", function(data) {
var favorites = new Favorites(data.favorites);
var feed = new Feed(data.feed);
var account = new Account(data.account);
new FavoritesView({el: $A.el('#nm'), collection: favorites);
new FeedView({el: $A.el('#at_view'), model: feed);
new AccountView({model: account});
});
}