commonjs 中视图的事件绑定 - BackboneJS
Event binding for views in commonjs - BackboneJS
我目前正在研究 BackboneJS,对它有点陌生。
我有一个名为 "product" 的视图,它具有通常的 - product.tpl、product_app.js、product_controller.js 和 product_view.js。除了这些,我还有一个commonJS.js,顾名思义,它包含所有视图共有的数据/函数。
我目前正在使用 - 绑定视图中的事件
"eventname selector" : "functionname",在每个视图的事件块中。
问题是我想在 commonJS 中绑定一些 keypress/keydown 事件,以免在所有视图中一遍又一遍地编写相同的代码。
events:{
"keydown .number-only": "isNumeric",
"keydown .text-only": "isText",
"keydown .alphanumeric": "isAlphanumeric"
},
有什么方法可以做到吗?
Backbone 接受方法作为 events
属性.
的值
您可以使用视图的自定义事件哈希扩展您的公共事件数据,return它:
events: function() {
// access commonEventHash from your common file
return _.extend(commonEventHash, {
"click .custom": "customMethod" // events specific to view
});
}
我目前正在研究 BackboneJS,对它有点陌生。
我有一个名为 "product" 的视图,它具有通常的 - product.tpl、product_app.js、product_controller.js 和 product_view.js。除了这些,我还有一个commonJS.js,顾名思义,它包含所有视图共有的数据/函数。
我目前正在使用 - 绑定视图中的事件 "eventname selector" : "functionname",在每个视图的事件块中。
问题是我想在 commonJS 中绑定一些 keypress/keydown 事件,以免在所有视图中一遍又一遍地编写相同的代码。
events:{
"keydown .number-only": "isNumeric",
"keydown .text-only": "isText",
"keydown .alphanumeric": "isAlphanumeric"
},
有什么方法可以做到吗?
Backbone 接受方法作为 events
属性.
您可以使用视图的自定义事件哈希扩展您的公共事件数据,return它:
events: function() {
// access commonEventHash from your common file
return _.extend(commonEventHash, {
"click .custom": "customMethod" // events specific to view
});
}