1

我是 Backbone 的新手,我以前使用过 ExtJS。我的目标是用一些数据填充主干集合。现在......在 ExtJS 中,如果我想加载一个集合,而不是使用属于它的 .load() 方法。当我阅读 Backbone 的文档时,我可以看到大多数分配给“模型”的获取/同步方法。所以我的问题是:

“如果我想加载 Backbone 的集合,我应该直接加载还是通过‘模型’加载?”

4

1 回答 1

2

骨干集合可以是骨干模型的集合。如果您将收藏设置为:

YourCollection = Backbone.Collection.extend({
    model: YourModel,
    url: '/url/to/json/collection';
    }
});

和你的模型:

YourModel = Backbone.Model.extend({
    url: '/url/to/json/model';
    }
});

然后您可以执行以下操作:

var collection = new YourCollection();
collection.fetch(); //GETs /url/to/json/collection

该路径/url/to/json/collection应返回一个 JSON 数组,其中数组中的每个元素都是模型的 JSON。

该路径/url/to/json/model应返回代表一个模型的 JSON。

想象你的服务器返回的 JSON 有一个类似 的属性"name",那么你可以做一些有趣的事情:collection.where({name: 'some name'}). YourModel这将返回一个带有s的数组。

所以,回答你最初的问题,是的,你应该通过 Backbone 的集合加载它。

于 2013-08-09T12:10:35.483 回答