Как я могу получить доступ к элементу View, связанному с объектом Model?Доступ к модели доступа в Backbone.js
Например, у меня есть коллекция Products
. Каждый товар имеет color
. Я хотел бы «скрыть» (т. Е. Удалить представление представления) каждый продукт, color
равен "red"
.
Единственный способ, который я знаю до сих пор, заключается в вызове (для примера) destroy()
метода объекта модели (код ниже). Но я не хочу уничтожать объект модели. Можно ли удалить элемент View без изменения его модели?
// App
hide_red_products: function() {
Product.each(function(x) {
if (x.attributes.color == "red") { x.destroy() }
})
}
// Products' view
initialize: function() {
this.model.bind('destroy', this.remove_element, this);
}
remove_element: function() {
return $(this.el).remove();
}
Ударьте меня на пару минут. Я взломал быструю «грязную» (и надуманную) демонстрацию, если вы этого хотите: http://jsfiddle.net/ambiguous/Ex8KJ/1/ –
Большое спасибо за ответ и демонстрационное приложение, очень полезно! – evfwcqcg