Ponieważ dopiero uczę się obiektów w JS napotkałem problem.
var jb_Object2=function(JQuery) { var x=""; init=0; //////////////////////////////////////// show_=function(){ console.log(x); // jezeli init =1 (done) to wyświetl show_ albo jakoś tak } loadData=function(){ var deferred = $.Deferred(); setTimeout(function(){ x='OK'; init=1; //Object.prototype.show=function(data){return show_()}; to takie moje zamysły deferred.resolve(); }, 3000) return deferred.promise(); } ;//end Ajax //////////init/////////// initApp=function(){ var pomise_= loadData(); pomise_.done(function(data){ console.log('promise done'); return true; }) } //////////////////////////// return{ init:initApp, show:show_ } /////////////////////////// }//end object var smog=new jb_Object2(); smog.init(); smmog.show()//Wielkie nic
Czemu nic nie pokazuje to wiem ale nie wiem jak zrobić żeby metoda wywołala się dopiero po inicjalizacji obiektu.
Myślałem nad dodaniem metody w momencie kończenia funkcji init() ale wtedy show() wywali błąd.