例如,在我的集合类中,我调用一个名为test的方法来人工填充我的集合。
我希望我的所有馆藏都能访问此方法。
我确定有多种方法可以做到这一点,但哪种方式是事实上的?
仅供参考,这是方法:
test: function () {
var models = [],
Model = this.model;
_.times(8, function (n) {
models.push(new Model({id: (n + 1)}));
});
this.set(models);
}
答案 0 :(得分:0)
试试这个:
var Collection = Backbone.Collection.extend({...});
var FooCollection = Collection.extend({...});
答案 1 :(得分:0)
您需要定义一个扩展Backbone.Collection
的类,然后在每次创建自己的集合时扩展该新类。我还将它包装在您自己的域中,以便您可以使用点语法轻松访问它,并且您可以添加更多自定义类,例如Backbone.Model
扩展名。
var MyStuff = (function() {
function MyStuff() {};
MyStuff.MyFancyCollection = Backbone.Collection.extend({
test: function....
});
return MyStuff;
})();
因此,当您想稍后使用此集合时,您将使用以下内容:
var MySpecificCollection = MyStuff.MyFancyCollection.extend({...});