Скажем, у меня есть эта модель 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");
Тогда скажем, у нас есть коллекция Backbone.js:
var TruckList = Backbone.Collection.extend({
model: Truck,
comparator: function(truck) {
return truck.get("brand");
};
});
Я коллекционер автомобилей, поэтому добавьте каждый автомобиль в свою коллекцию:
Trucks = new TruckList();
Trucks.add(truck1);
Trucks.add(truck2);
Trucks.add(truck3);
Trucks.add(truck4);
Просто сосредоточив внимание на атрибуте бренда, truck4 является дубликатом truck1. У меня нет дубликатов в моей коллекции. Мне нужна моя коллекция, чтобы иметь уникальные значения.
Мой вопрос: как удалить повторяющиеся элементы из моей коллекции Backbone.js?
Должен ли я использовать Underscore.js для этого? Если да, может ли кто-нибудь предоставить рабочий/исполняемый пример того, как это сделать.
Предположим следующее:
1.Сбор не сортируется
-
Удаление должно производиться по значению атрибута бренда
-
Ajax вызов для заполнения каждого экземпляра Truck. Это означает, что при добавлении в коллекцию у вас нет доступа к свойствам Truck.