我有一个如下所示的集合
window.courses = new Courses();
和我的代码中的一些地方我试图访问集合的属性。我使用pluck只获取了一个属性,即courseName
例如:
var courseName = window.courses.pluck('Name');
我可以在我的收藏中获得所有课程名称(单一属性),但有一种方法可以从课程集合中获取每个项目的名称和ID,例如
var courseList = window.courses.pluck('Id','Name');
使用以下代码
var courseList = window.courses;
我得到了我不需要的所有额外细节,因此有人可以建议如何获取集合中所有模型的必需属性
提前致谢
答案 0 :(得分:2)
标准Backbone pluck function仅支持读取一个属性值。
你可以自己编写,例如:
Backbone.Collection.prototype.pluckMany = function (attrs) {
return _.map(this.models, function (model) {
return _.pick(model.attributes, attrs);
});
}
var courseList = window.courses.pluckMany(['Id', 'Name']);
注意:未经测试的代码!