when
을 사용하여 Jquery의 약속을 살펴 봤는데 제 시나리오를 충분히 채울 수 있는지 또는 어떻게해야하는지 다시 생각할 필요가 있는지 궁금합니다.Jquery에 대한 약속 이해
그래서 내가 좋아하는 장소에서 청취자의 부부와 backbone.js 모델이 있습니다
this.on('supplier:change', function(){
$.get('/supplier_details', function(data){
// fill in some fields here
anotherAjaxCallInAnotherFunction();
});
});
anotherAjaxCallInAnotherFunction: function(){
// Another Ajax call
}
나는 모든 아약스 호출이 끝날 때까지 기다려야 약속 수있을 것입니다 그래서 model.set({supplier: 'ss'}).done();
같은 when
를 사용한다면 ?
백본 모델에서 여러 Ajax 호출이 필요한 여러 속성을 설정하면 어떻게됩니까? 약속이 모델의 전체 설정을 캡슐화합니까?
$.when(firstAjaxCall, secondAjaxCall)
.done(
function(firstResp) { console.log(firstResp); },
function(secondResp) { console.log(secondResp); }
);
을 또는 성공적으로 firstAjaxCall
에 대해 반환 할 때 수 listenTo
sync
이벤트, 그리고, 당신이 secondAjaxCall
를 호출 할 수 있습니다 :
를 = 아니, 트릭을 할 것인가? – Vassilis
그러나 나는 당신이 이미이 일을하지 않은 경우를 대비하여 https://raw.github.com/kriskowal/q/master/design/README.js가 어떻게 작동하는지에 관해 읽을 것을 제안합니다. –
@ant_Ti 확실합니까? 마지막으로 백본이 약속과 완전히 통합 된, 예를 들어'this.model.save(). done() ' – Sammaye