까다로운 상황이 있습니다. 여러 함수가 완료 될 때까지 함수의 실행을 지연시켜야합니다. 다음은 정상적인 상황에서 작동합니다.jQuery/Javascript 지연 여러 함수가 완료 될 때까지 함수 실행
$.when(foo1(), foo2(), foo3()).then(function(){
//foo4();
});
내 상황은 약간 다릅니다. $.when()
에 전달 된 함수가 즉시 실행되기를 원하지 않습니다. foo1-3
은 다른 방법으로 가까운 장래에 어느 시점에서 실행됩니다. 즉, 제가 선택한 시점에 수동으로 foo1-3
을 실행하고 싶습니다. foo1-3
이 실행 된 후에 만 (특정 순서없이) foo4
이 실행됩니다.
내 직감은 $.Deferred()
을 파헤 쳐다 보면서 말했지만, 내가 필요한 것을 찾지 못했습니다. 어떤 아이디어?
당신은 '그 때는 의미했다 (foo4)', 맞죠? 그렇지 않으면'foo4()'에 의해 반환 된 값을'.then()'에 전달하고 있습니다 ... –
나는 그것을 헷갈 리지 않도록 편집했습니다. 그러나 네, 맞습니다. –