说我有这些Backbone.js模型:
var Truck = Backbone.Model.extend({});
var truck1 = new Truck();
var truck2 = new Truck();
truck1.set("brand", "Ford");
truck2.set("brand", "Toyota");
truck3.set("brand", "Honda");
truck4.set("brand", "Ford");
Run Code Online (Sandbox Code Playgroud)
然后,假设我们有一个Backbone.js集合:
var TruckList = Backbone.Collection.extend({
model: Truck,
comparator: function(truck) {
return truck.get("brand");
};
});
Run Code Online (Sandbox Code Playgroud)
我是汽车收藏家,所以有时间将每辆车添加到我的收藏中:
Trucks = new TruckList();
Trucks.add(truck1);
Trucks.add(truck2);
Trucks.add(truck3);
Trucks.add(truck4);
Run Code Online (Sandbox Code Playgroud)
只关注品牌属性,truck4是truck1的副本.我的收藏中不能有重复项.我需要我的收藏品具有独特的价值观.
我的问题是,如何从Backbone.js集合中删除重复的项目?
我应该使用Underscore.js吗?如果是这样,有人可以提供一个工作/可运行的如何执行此操作的示例.
假设如下:
1.Collection没有排序
必须对品牌属性值进行删除
Ajax调用填充Truck的每个实例.这意味着在添加到集合时,您无权访问Truck属性.