私は CoffeeScript と backbone.js に慣れようとしていますが、何かが欠けているに違いありません。
このCoffeeScript:
MyView = Backbone.View.extend
events: {
"click" : "testHandler"
}
testHandler: ->
console.log "click handled"
return false
view = new MyView {el: $('#test_container')}
view.render()
次の JavaScript を生成します。
(function() {
var MyView, view;
MyView = Backbone.View.extend({
events: {
"click": "testHandler"
},
testHandler: function() {
console.log("click handled");
return false;
}
});
view = new MyView({
el: $('#test_container')
});
view.render;
}).call(this);
しかし、クリックしてもclick
イベントが発生しません。testHandler
test_container
出力 JavaScript を次のように変更すると:
$(function() {
var MyView, view;
MyView = Backbone.View.extend({
events: {
"click": "testHandler"
},
testHandler: function() {
console.log("click handled");
return false;
}
});
view = new MyView({
el: $('#test_container')
});
view.render;
});
を削除しcall(this)
て追加すると$
、すべてが期待どおりに機能します。私は何が欠けていますか?