2013-10-02 2 views
3

정확하게 무엇이 작동하는지, 그리고 언제 어디서 어떻게 사용해야하는지 .deferred와 함께 해결해야합니다. 아래의 함수에는 두개의 .done 콜백이 있습니다. 두 가지 콜백 메시지를 설정하려고합니다. fiddle

var deferred = $.Deferred(); 
deferred.done(function(value) { 
    alert(value); 
}).done(function(id){ 
alert(id) 
}); 

console.log(deferred) 

deferred.resolve("hello world"); 
+0

그냥 당신이이 경고의 다른 메시지를 표시하고 싶어, 당신의 질문을 명확히? – phuzi

+0

예 다른 메시지를 보여주고 싶습니다. 또한 이해하고 싶습니다. .deferred – Carlos

답변

5

jQuery.Deferred은 promise 패턴의 jQuery 구현의 주요 도구입니다. 사용자의 특정 요구에 관해서는

: 여기

몇 링크, 가치가 읽고있는 당신이 .done()의 문서를 읽을 .then()을 (사용해야합니다 및 .then()).

var deferred = $.Deferred(); 

deferred.then(function(value) { 
    alert(value); 
    return 42; 
}).then(function(id){ 
    alert('The answer : ' + id); 
}); 

console.log(deferred) 

deferred.resolve("hello world"); 

fiddle

2

원하는대로 할 수 있습니까?

var deferred = $.Deferred(); 
deferred.done(function(value) { 
    alert(value[0]); 
}).done(function(value){ 
    alert(value[1]); 
}); 


deferred.resolve(["hello world", "goodbye, cruel world"]); 
+0

답변을 주셔서 감사합니다. 우리가 .deferred를 사용하지 않고 얻을 수있는 것과 같은 결과를 알고 싶습니다. 왜 .deferred가 유용한지를보십시오. http://jsfiddle.net/WLpBB/1/ – Carlos

관련 문제