var ajaxStuff = (function () {
var doAjaxStuff = function() {
//an ajax call
}
return {
doAjaxStuff : doAjaxStuff
}
})();
有什么方法可以利用这种模式,并在调用我的方法时从成功的 ajaxcall 中获取响应?像这样:
ajaxStuff.doAjaxStuff(successHandler(data){
//data should contain the object fetched by ajax
});
希望你明白了,否则我会详细说明。
最佳答案
两件事: 1.给doAjaxStuff函数增加一个参数。 2.调用doAjaxStuff时,传入一个匿名函数(或函数名)
var ajaxSuff = (function () {
var doAjaxStuff = function(callback) {
// do ajax call, then:
callback(dataFromAjaxCall);
}
return {
doAjaxStuff : doAjaxStuff
}
})();
// calling it:
ajaxStuff.doAjaxStuff(function(data){
//data should contain the object fetched by ajax
});
关于Javascript 模块模式,ajax 函数回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9490368/