jQuery objeto adiado com chamadas aninhadas aninhadas
Eu tenho uma situação em que minhas chamadas ajax devem executar em uma ordem específica. Eu usei objetos jQuery Deferred em outras situações, mas não consigo encontrar uma maneira de fazer isso se comportar adequadamente.
Eu tenho uma função que executa um número deajax
pedidos em sua vida. Algumas das solicitações serão executadas durante o retorno de chamada de sucesso de outras solicitações.
Minha pergunta:Existe uma maneira de retornar todos os objetos adiados aninhados para o original$.when
ligar?
Um exemplo simplificado seria:
function nestedAjax() {
$.get("/", function(){
console.log("First ajax done.");
$.get("/", function(){
console.log("Second ajax done.");
});
});
};
Eu estou tentando ter onestedAjax
função para usar$.when()
e$.done()
igual a:
$.when(nestedAjax()).done(function(){
console.log("Complete");
});
Com a leitura da saída do console:
> First ajax done.
> Second ajax done.
> Complete.
Eu posso devolver o primeiroget
Para alcançar isto:
> First ajax done.
> Complete.
> Second ajax done.
Mas obviamente isso não é o que eu preciso. Qualquer ajuda seria apreciada.