私はBACKBONE.JSを学習し、この上の混乱しています: 私はチュートリアルの次のです:あなたが最初の例(1.js)で見ることができるよう http://arturadib.com/hello-backbonejs/いつBackbone.jsで_.bindAll()を使用する必要がありますか?
を:
(function($){
var ListView = Backbone.View.extend({
el: $('body'), // attaches `this.el` to an existing element.
initialize: function(){
_.bindAll(this, 'render'); // fixes loss of context for 'this' within methods
this.render(); // not all views are self-rendering. This one is.
},
render: function(){
$(this.el).append("<ul> <li>hello world</li> </ul>");
}
});
var listView = new ListView();
})(jQuery);
しかし、私が文章:_.bindAll(this, 'render');
をコメントアウトすると、これはまだ動作します。私はgoogleで検索し、誰かが方法bindAll()
が必要であると言いました。なぜなら私のコンテキストを切り替えると、this.render
の呼び出しは利用できなくなるからです。私は "文脈"に混乱しているように感じます。また、電話(this.render
)が利用できなくなったときに私に説明する人もいますか?
イベントの何かはバックボーン、FYIによって自動的にバインドされています。 –
非常に素晴らしい説明、素晴らしい仕事 – M3ghana