私は、$.getJSON
私は持っている2つを同期するためにjQuery $.when
関数を使用しています。両方の呼び出しからのデータをマージするとうまくいきますが、jQueryオブジェクトの配列であるマージの内容を返したいと思います。
$.when
関数を使用して、非同期呼び出しを同期するコードを含む別の関数をラップして、これを実現しようとしています。私のコードは次のようになります。
$.fn.getResultFromMergedJsonCalls = function(params){
$.when(
$.fn.jsonCall1(params), $.fn.jsonCAll2(params)
).then(function(){
var mergedData = mergeResults(resultOfJsonCAll1,resultOfJsonCAll2)
return mergedData;
});
};
)
がどのように呼び出し元の関数にmergedData
配列の内容を返すことができ、私はので、私はちょうど問題を解決パターンを必要とし、この動作を引き起こしている非同期呼び出しの性質を知っています。ありがとう。
できません。それは非同期です。 '.then'に渡すコールバックの中で結果を処理したり、コールバックの中から呼び出された関数に渡したりする必要があります。 –
通常、 '$ .fn'関数を直接呼び出すことはありません。 – pimvdb