我应该为每个列表使用不同的Backbone类或不同的实例吗?

时间:2012-09-07 04:39:12

标签: javascript model-view-controller architecture frameworks backbone.js

我正在使用Backbone.js

我的页面上有多个模型列表。我应该做一个"班级"使用Backbone.Collection.extend,我的列表应该是这个" class"的实例,或者我应该创建与我的页面上的模型列表一样多的类?

所以,我应该这样做:

var MyCol1 = new Backbone.Collection.extend({})
var MyCol2 = new Backbone.Collection.extend({})

var listView1 = new ItemsView({ collection: new MyCol1 })
var listView2 = new ItemsView({ collection: new MyCol2 })

或者更确切地说是这个?

var MyCol = Backbone.Collection.extend({})
var listView1 = new ItemsView({ collection: new MyCol })
var listView2 = new ItemsView({ collection: new MyCol })

此时所有列表的行为几乎相同,但它们会有不同的后端网址。

1 个答案:

答案 0 :(得分:1)

如果某些东西不同,你会发现你需要两个不同的类,或者你会发现自己处于条件句的地狱。

您可以使用具有常见行为的自定义BaseCollection,并从中继承详细行为。检查以下内容: