2013-10-18 3 views
0

는 지금은이 코드가 있습니다. 이제 promise1과 promise2에 의존하는 3 번째 약속 - promise3이 있습니다. 이는 이전 2 개가로드되면 promise3 용 데이터 만 가져올 수 있음을 의미합니다. 그런 다음 세 가지 결과를 processData 함수에 보내고 싶습니다. 이걸 어떻게 풀 수 있습니까? promise3이 후에 만 ​​ promise1를로드 할 수 있고 promise2 완료 때문에, 결과 부 JQuery와 약속

$.when(promise1, promise2, promise3).done(this.processData.bind(this)); 

트릭을 할 것이라는 점을 알고있다.

+0

첫 번째가 완료되면 두 번째를 넣습니다. –

답변

0
$.when(promise1, promise2) 
.done(function (promise1_result, promise2_result) { 

    //Call promise3 having access to the results returned from promise1 and promise2 
    promise3.done(function(promise3_result) { 

    }); 

}); 
+0

"promise3은 promise1 및 promise2가 완료된 후에 만로드해야합니다"라는 요구 사항을 충족합니까? 여기에 설명 된대로 promise1 및 promise2가 해결 된 후에 promise3의 완료 처리기가 연결되지만 promise3 자체가 해당 시간 전에 존재하게됩니다. –