我有一堆嵌套函数从 ajax 调用返回延迟对象。这是我的代码的样子
function makeCalls() {
var ajaxDfd1 = $.ajax(...);
ajaxDfd1.then(function() {
// want to execute after first call
var ajaxDfd2 = $.ajax(...);
ajaxDfd2.done(function() {
// want to execute after second call
});
return ajaxDfd2;
});
return ajaxDfd1;
}
makeCalls().done(function() {
// stuff here was executed early
});
但是我的电话并没有按照我想要的顺序执行。里面的东西makeCalls().done()
似乎是在ajaxDfd2
实际完成之前调用的。