次のクラスを作成します。
APP.core.View = function () {
var self = this;
$.ajax ( { url: 'test.html' } ).done ( self.build );
return self;
};
APP.core.View.prototype.build = function ( source ) {
var self = this;
// this refers to the AJAX callback.
return self;
};
build
メソッドでわかるように、this
(APP.core.View に属するもの) への参照が失われています。どうすれば元に戻せますか? this
次のように AJAX コールバックでref を渡すことができることはわかっています。
$.ajax ( { url: 'test.html' } ).done ( function ( source ) {
self.build ( source, self );
} );
しかし、メソッドがそのオブジェクトへの参照を失うことは決してないように感じるので、私はそれがあまり好きではありません。
アイデア/提案はありますか?:)