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
  });
}