too*_*oba 0 coffeescript backbone.js
我正在使用带有Backbone视图类的CoffeeScript.当我将该类包含在与html相同的页面中时,一切正常.当我使用单独的文件并导出类时,它会初始化但不会映射事件.
类文件是:
root = exports ? this
class root.AppView extends Backbone.View
el: $("#app")
events:
'click #appBtn1' : 'handleEvent'
'click #appBtn2' : 'handleEvent'
initialize: =>
alert 'init'
handleEvent: =>
alert 'event'
Run Code Online (Sandbox Code Playgroud)
只有初始化函数触发.当代码在单独的类中时,我需要更改以映射事件?
问题是该功能
$("#app")
Run Code Online (Sandbox Code Playgroud)
定义类时立即运行.因此,当类位于单独的文件中时,该#app
元素尚未(必然)存在于DOM中.
您应该做的是使用选择器字符串,Backbone将$
在实例化类时传递给函数:
el: "#app"
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
311 次 |
最近记录: |