【问题标题】:Backbone View events won't fire骨干视图事件不会触发
【发布时间】:2011-10-12 19:00:17
【问题描述】:

我在一个项目中使用 Backbone,我正在尝试让 Backbone 视图的事件功能正常工作。我有以下代码(它是从我当前的应用程序中提取的):

我的基础文件:

window.App =
   Models: {}
   Views: {}

我的模特:

class App.Models.Story extends Backbone.Model
  defaults:
    id: null
    content: null

我的观点:

class App.Views.Story extends Backbone.View
  tagName: "li"
  className : "story item"

  events:
    "click" : "test"

  test: ->
    alert "TEST"

  render: ->
    html = "<div> #{@model.get("content")} </div>"
    $(@el).html(html)
    return this

页面加载代码:

$(document).ready ->
  story = new App.Models.Story(content: "Some content")
  view = new App.Views.Story(model: story)
  $("body").append(view.render().el)

元素呈现,但当我点击它时,点击处理程序不执行。我做错了什么?

【问题讨论】:

  • -1,因为没有告诉你如何修复它

标签: jquery javascript-events backbone.js


【解决方案1】:

你会讨厌这个答案...你需要声明 events 而不是 event

events:
    "click" : "test"

【讨论】:

  • 好收获!但是,更改它并不能解决我的问题。我正在更改问题以反映这一点。
  • @ZameerManji 对此感到非常惊讶。我将您的代码放入 jsFiddle 中,一旦我更改它就可以工作。
  • 想解释一下你做了什么让它工作?它可能会帮助其他偶然发现这个问题/答案的人
  • @Zameer 我认为你绝对应该告诉我们你做了什么来修复它,我现在遇到了同样的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-28
  • 1970-01-01
  • 2013-11-03
  • 1970-01-01
相关资源
最近更新 更多