我是 Backbone.js 的新手。我在 v0.9.2 应用程序上使用 CoffeScript。该应用程序工作“正常”,但initialize()
没有调用视图的方法。事件也没有被正确绑定。我试图弄清楚为什么不是这样。我正在使用其他(手动)方法将事件绑定到元素,但事实并非如此。
该应用程序是这样实例化的:
window.Site =
Models: {}
Collections: {}
Views: {}
Routers: {}
init: ->
new Site.Routers.MyRouter()
Backbone.history.start()
$(document).ready ->
Site.init()
路由器:
class Site.Routers.MyRouter extends Backbone.Router
routes:
'': 'index'
initialize: ->
# some code here (this IS being called)
index: =>
# this is also being called since I am trying mysite.com/
view = new Site.Views.MyView()
$('#someId').html(view.render().el)
风景:
class Site.Views.MyView extends Backbone.View
template: JST['views/index']
events:
'click .someElement': 'someMethod'
inititalize: ->
console.log "hello" # NOT CALLED
_.bindAll @
@
render: =>
# draw stuff (this works)
@
视图绘制得很好。为什么initialize
不被调用?
谢谢!