【发布时间】:2013-02-05 20:32:09
【问题描述】:
我有一个采用collection 的视图,如下所示:
MyView = Backbone.View.extend({
initialize: function() {
this.collection.on("change://an attribute of a model in aCollectionToRender", someAction);
}
});
var MyViewInstance = new MyView({
collection: aCollectionToRender
});
基本上,我不希望MyView 监听整个集合的变化,只监听集合包含的模型的单个属性。
我意识到有很多替代方案:
- 为
aCollectionToRender的每个模型创建视图,并在这些视图中附加.on("change")事件。我不想这样做,因为这不适合我的情况 - 只需有一个
this.collection.on("change")事件并根据我的要求使用事件处理程序过滤器。这不太优雅,如果 Backbone 已经允许我按照我上面的要求编写事件过滤器,那么这是重复代码
我只是想知道是否有任何方法可以编写一个已经进行过滤的事件侦听器。这个问题也可能是重复的;我看了,但我没有找到完全一样的东西,但是,有很多 Backbone 问题
【问题讨论】:
标签: backbone.js backbone-events