javascript - 如何将 Backbone View 事件哈希定义为函数?

标签 javascript backbone.js backbone-views

Backbone 文档说

Properties like tagName, id, className, el, and events may also be defined as a function, if you want to wait to define them until runtime.

我还没有看到使用此功能的示例。有人可以告诉我如何实现吗?

最佳答案

在最简单的形式中,您只需从函数返回一个事件散列对象:

View = Backbone.View.extend({
  events: function() {
    return {
      "click #save" : "save"
    };
  }
});

当然,这没有多大意义。如果您需要有条件地绑定(bind)事件或使用某些仅在运行时可用的信息,此功能会很有用:

View = Backbone.View.extend({
  events: function() {
    return {
      "click #save" : this.model.isNew() ? "create" : "update"
    };
  }
});  

关于javascript - 如何将 Backbone View 事件哈希定义为函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14681863/

相关文章:

javascript - 使用 Express NodeJS Rest api 样板创建新路线

javascript - 下划线标记在 backbone 中有什么作用,我们什么时候使用它?

mod-rewrite - 如何动态设置基础标签?

ajax - 仅将事件 ajaxStart() 和 ajaxStop() 附加到当前主干 View

javascript - Backbone.View "el"困惑

javascript - 如何将参数传递给绑定(bind)在 backbone.js 中的事件对象中的函数

javascript - webpack:如何将所有 scss 文件捆绑到一个 main.css 文件中

javascript - Angular 6变量定义时未定义

javascript - 如何将对象传递给 AngularJS 工厂?

javascript - Handlebarsjs 对象数组 : TypeError: Cannot read property 'id' of undefined