Почему мои события CoffeeScript / backbone.js не запускаются?

Я пытаюсь познакомиться с 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;
});

Удаление вызов (this) и добавление $ , все работает должным образом. Что мне не хватает?

10
задан Paul D. Waite 11 November 2010 в 11:42
поделиться