私はbackbonejsを初めて利用しています。私は正しいthis
オブジェクトをコールバック関数に渡そうとしていますが、その関数はビューのメソッドです。"this"オブジェクトをコールバック関数に渡すより良い方法はありますか?
私の現在のソリューション:
APP.LocationFormView = APP.View.extend({
initialize: function() {
if (navigator.geolocation) {
var that = this;
var success = function(position) {
_.bind(that.onSuccessUpdatePos, that, position)();
};
var error = function(error) {
_.bind(that.onFailUpdatePos, that, error)();
}
navigator.geolocation.getCurrentPosition(success,
error);
} else {
}
},
onSuccessUpdatePos: function(position) {
// We can access "this" now
},
onFailUpdatePos : function(error) {
// We can access "this" now
}
});
は、これは私が欲しいものを達成するための正しい方法は何ですか? これはあまり冗長な解決策はありませんか?
CoffeeScriptを使用する予定がある場合は、関数の定義で太い矢印=>を使用してバインドを避けることができます。同じことをしますか? – Radek