LINUX.ORG.RU

История изменений

Исправление makoven, (текущая версия) :

Ну вообще-то так и должно быть. Например метод render у вьюхи может использоваться в разных местах. То же самое с методом click. Сейчас использую вот такой костыль

  Event.prototype.bindListeners = function(names){
    names.forEach(function(name){
      var listener = "_" + name;
      if(!this[listener])
        throw Error("Can't bind missing listener '" + listener + "'");
      this[name] = this[listener].bind(this);
    }, this);
  };

На прототипе вьюхи создаю методы _click, _render, _change, etc. В конструкторе делаю this.bindListeners([«click», «render», «change»])

Исходная версия makoven, :

Ну вообще-то так и должно быть. Например метод render у вьюхи может использоваться в разных местах. То же самое с методом click. Сейчас использую вот такой костыль

  Event.prototype.bindListeners = function(names){
    names.forEach(function(name){
      var listener = "_" + name;
      if(!this[listener])
        throw Error("Can't bind missing listener '" + listener + "'");
      this[name] = this[listener].bind(this);
    }, this);
  };

На прототипе вьюхи создаю методы _click, _render, _change, etc. В конструкторе делаю this.bindListeners(«click», «render», «change»