我为骨干创建了一个mixin,我想知道是否有比合并事件散列更好的方法。合并mixin和Views的事件定义backbone.js
密新:
app.mixin.filter = {
events: {
'click .label': 'toggle',
'keyup .file-search': 'updateSearchFilter'
},
//more stuff
}
查看:
app.DashboardView = Backbone.View.extend({
el: '.contentwrap',
dashEvents: {'click .project-btn': 'addProjectModal'},
initialize: function() {
//other stuff
_.defaults(app.DashboardView.prototype.events, this.dashEvents);
//other stuff
}
}
_.extend(app.DashboardView.prototype, app.mixin.filter);
我特别不满意调用事件哈希dashEvents。有什么方法可以将事件保持为“事件”? 还是有一个标准模式来处理这种问题?
孤立地看,这不实际工作。 – Stevo 2013-05-02 14:39:50
其实我刚刚忘了'app.mixin.filter'中的'events'道具。但这是工作方法。你要求的模式,我给你。 – 2013-05-02 14:51:02
@VitaliyPetrychuk据我的理解,这个问题不仅在扩展事件,而且方法。 – 2013-05-02 15:02:57