我正在寻找一种更简洁的方法来做到这一点:
var f1 = function(){};
var f2 = function(){};
doSomething('ArbritraryString',f1); //does xhr, and then runs f1 on callback
doSomething('ArbritraryString',f2); //does xhr, and then runs f2 on callback
$.when($.get('myJson',f1,f2)).then(function(ret1, ret2, ret3){
//doStuff
});
有任何想法吗?
该doSomething
函数实际上只是调用空的 f1/f2 函数,所以我有一个$.when
atm 的回调处理程序......
理想情况下我想要
$.when($.get('myJson',doSomething('ArbritraryString',function(){}); ,doSomething('ArbritraryString',function(){}))).then(function(ret1, ret2, ret3){
//doStuff
});
并让 jquery 神奇地知道 doSomething 中的第二个参数是它必须注意的回调。
doSomething
看起来像这样:
doSomething:function(name,callbackFunction){
/*snip logic
*/
$.get(name, function(data){
/*some more logic
*/
if(typeof(callbackFunction)==='function'){
callbackFunction();
}
});
}
},