バックボーン サブビューのイベント バインディングを理解するのに問題があります。私の見解は次のように定義されています。
TenantView = Backbone.View.extend({
events: {
"click": "setActive"
},
initialize: function() {
this.parentEl = this.options.parentEl;
return this.render();
},
template: new EJS({
url: '/scripts/templates/tenant.ejs'
}),
render: function() {
$(this.parentEl).children('ul').append(this.template.render(this.model));
return this;
},
setActive: function(event) {
return this.model.set('active', true);
}
});
テンプレートは単純に を含む で構成されli
ますa
。このようにすると、ビューのクリック イベントがキャッチされず、メソッドsetActive
がトリガーされることはありません。
el
私の(2)ビューの1つのようなプロパティでビューを拡張すると、el: 'li'
適切に機能し、setActive
関数がトリガーされます。2番目のビューはまったく反応しません。ビューの初期化中にプロパティを調べるel
と、作業中のビューのel
プロパティは rightを指しli
、失敗したビューはページでel
最初li
に見つかったものを指します。
ご覧のとおり、el
プロパティの意味に関しては、私は完全に迷っています。
質問は、ビューのクリックをこのまさにビューsetActive
関数にバインドするにはどうすればよいですか?
誰か教えてください。
よろしくフェリックス