オブジェクトリテラル表記法について学んでいますが、少し複雑なことをしようとしている、またはしていると思います。例えば
私が達成しようとしているのは
- オブジェクトを初期化する
- jquery オブジェクトを保存する
- JSON のリクエスト
- そのJSONでいくつかのhtmlを構築し、promiseも使用します
(免責事項、私の英語と視力の欠如を許して、私の問題を明確に指摘していただければ幸いです)
var objeto = objeto || (objeto = {
jsonUrl:"/something",
container:{},
triggerContainer:{},
property1:{},
init:function(var0,var1){
this.container = $(var0);
this.triggerContainer = $(var1);
// ignoring some details I proceed to set my event
this.loader()
},
loader:function(){
// Here my scope is objeto, so far so good
// But I have create self because my scope is about to change, am I right?
self = this;
this.triggerContainer.on("click",function(){
// now, I'm going to request the json making a promise
promiseME = jQuery.getJSON(self.jsonUrl);
promiseME.done(self.Build);
// NOW, I did it in this way beacuse I think it looks a bit cleaner
// Of course my problem come next
});
},
build: function(data) {
/*
here it is, now this is scoped for the promise, and I want to use data
to build some html, but I want to append to objeto.container, and I don't
know how to access, and I did even know how to pass a refence with .done()
*/
}
});
私は、この構造で何かを台無しにしていると確信しています。たぶん私の使い方が悪いのでしょう。もしそうなら、私が間違っていることを説明してもらえますか
よろしくお願いします。