dojo.declare("profile.BasicInfo", [dijit._Widget, dijit._Templated], {
somefunc: function() {
dojo.xhrPost({
url: ajaxURL,
content: adata,
load: function(data) {
alert(this);//this refers to the object sent to xhrPost
}
});
},
somevar: 17
});
Iはthis
が機能xhrPostにパラメータとして送信対象IMを指す使用場所である必要があります。これは正しいです。エラーはありません。しかし、私はdojo.declareの3番目のパラメーターであるオブジェクトにアクセスしたいと思います。これへの参照が道場ウィジェット
またはsomevar
にアクセスします。確かにthis.somevar
は効きません。
私が思いついた解決策の1つは、this
の複製参照を使用し、xhrPost内で使用することでした。これは使えますか?または私は間違った方法でオブジェクトを使用しています。これは、dojoローダがファイルを解析するときに問題になるでしょうか?
somefunc: function() {
var temp = this;
dojo.xhrPost({
url: ajaxURL,
content: adata,
load: function(data) {
alert(temp);//will temp refer to what i want it to?
}
});
},
もっと良い解決策はありますか?
'この'
きれいになりますしてい。しかし、私は自分自身で 'var self = this'の方が好きです。コードが少なく、より明確です。 –
ああ、私はそのことを忘れていました。私はそれが限られた道場経験を持つ人々を混乱させると思うので、個人的に、私はヒッチを使用しません。 – limscoder