Как новый хэш событий Backbone View вместо этого работает со значениями функций строк в версии 0.9.0?

Журнал изменений Backbone 0.9.0 говорит:

Хэш событий представления теперь может также содержать прямые значения функций как а также строковые имена существующих методов представления.

Когда я пытаюсь выполнить следующее, ничего не получается, говоря, что значение события undefined .

var BB = Backbone.View.extend({
  'initialize': function() {

    this.$el.html('<input type="button" value="Click me!" />');
    jQuery('body').html(this.el);
  },

  'events': {
    'click input[type="button"]': this.buttonClicked
  },

  'buttonClicked': function() {
    alert('button clicked!');
  }

});

window.b = new BB()

Могу ли я неправильно понять новую функцию? Может кто-нибудь объяснить, как это работает не так, как я ожидал? Возможно, это просто мой синтаксис JavaScript / значение 'this' во время определения, которое не работает.

То, как я привык это делать, по-прежнему работает:

'events': {
  'click input[type="button"]': 'buttonClicked'
},
7
задан mu is too short 25 February 2014 в 01:56
поделиться