如何在骨干网中维护多个集合和视图实例?

时间:2013-01-18 10:29:58

标签: javascript jquery html5 backbone.js

我的应用的简要结构

- >主视图

- >模型

- >收集

- >子视图

主视图使用集合实例创建许多子视图。

内部的主视图

newTable:function(){

var collection=new Collection;
var subview=new SubView({collection:collection});

}
  1. 我需要从服务器获取发送请求。
  2. 我需要根据回复更新馆藏。
  3. 满足这些要求

    1. 我需要维护哪个集合的请求
    2. 哪个集合必须在响应时更新。
    3. 如何维护请求和响应?

1 个答案:

答案 0 :(得分:0)

Backbone.sync的目的是为你处理这个问题。当你有一个集合时,你可以像这样对它进行提取:

 collection.fetch()

然后,集合将通过Backbone.sync向其URL发出ajax请求,并在返回时自行更新。然后它会触发“重置”事件,让您知道它已更新。将子视图绑定到各自集合上的“重置”事件,如下所示:

SubView = Backbone.View.extend({

    initialize: function(){
        this.collection = this.options.collection;
        this.collection.bind("reset", this.render, this);
    }
})

此特定子视图应该像new SubView({collection: yourCollection})一样进行实例化。然后,当您执行yourCollection.fetch()时,它将自行呈现。你当然可以绑定到你喜欢的任何功能!