I have the following code:
var myPage = {};
myPage.component = function(callback){
var somethingHappened = true;
if (somethingHappened){
callback();
}
};
myPage.main = function(){
// Initialise.
this.init = function(){
// make an instance of my component
this.component = new myPage.component( this.callback );
// need my utility function here
this.doSomethingUseful();
};
// Callback to be executed when something happs in the component.
this.callback = function(){
this.doSomethingUseful(); // doesn't work
};
// A useful utility that needs to be accessible from both the
// init() and callback() functions
this.doSomethingUseful = function(){
// some utility stuff
};
};
new myPage.main().init();
What's the best way for me to ensure that the myPage.main scope is available when the callback function is executed from the component?