之前,我有以下代碼需要幫助在等待承諾返回
var a = ajax1();
var b = ajax2();
$.when(a,b).done(function(){
var d = function123();
$.when(d).done(function(){//doSomething});
});
function function123(){
var c = ajax3();
return c.promise();
}
return $.when(a,b,c).promise()//???;
我如何等待一切恢復功能前完成?
編輯: 我使用測試代碼如下:
var e = $.when(a,b)
.done(function(){
var d = function123();
d.done(function(){
console.log('1');
});
return d.done(function(){//doSomething});
});
e.done(function(){
console.log('2');
});
我的返回結果是 '2 1'。但是我期待着'1 2'的結果。我可能知道這是爲什麼嗎?
我不明白你怎麼會從該代碼得到'2 1'。請提供[mcve] – Jamiec