可配置的Backbone.js事件选择器

Kar*_*ski 4 backbone.js backbone-events backbone-views

我正在使用优秀的框架Backbone.js开发简单的应用程序,如果我可以制作可配置的主干视图事件选择器,例如这样它不起作用,会导致它的错误的js语法,这将是很好的:

return Backbone.View.extend({
    events: {
        'click ' + someConfigSelector: 'doSomethink'
    }
})
Run Code Online (Sandbox Code Playgroud)

是否有其他方法可以在Backbone视图中设置事件?

Pau*_*cke 7

看看这个小提琴:http://jsfiddle.net/phoenecke/hyLMz/1/

您可以使用函数events代替对象.

return Backbone.View.extend({
    events: function() {
        // add some normal events to the hash
        var e = {
            'click #foo': 'doSomething1',
            'click #bar': 'doSomething2'
        };
        // add one where key is calculated
        e['click ' + someConfigSelector] = 'doSomething';
        // return events hash
        return e;
    }
});
Run Code Online (Sandbox Code Playgroud)

这样,您可以根据配置添加计算密钥的事件.