我有一个带有男性和女性模特的backbone.js集合。
在我的界面中,我想将它们分成各自的列。是否有内置/推荐的方法在backbone.js集合中进行分组?
现在在我的视图/渲染代码中我正在做
if male
self.el.appendTo(#male)
if female
self.el.appendTo(#female)
还有其他办法吗?也许使用下划线的groupBy?
感谢。
答案 0 :(得分:3)
您可以按性别过滤集合以获取匹配模型的数组
Person = Backbone.Model.extend();
Persons = Backbone.Collection.extend({
model: Person,
filterGender: function (g) {
return this.filter(function(m) {
return m.get("gender")==g;
});
}
});
l=new Persons();
l.add({gender:'female',id:1});
l.add({gender:'female',id:2});
l.add({gender:'male',id:3});
console.log(l.filterGender("female"));