지연된 파이프를 사용하여 콜백을 체인화하는 데 어려움을 겪고 있습니다. 잘 작동하는 것처럼 보이지만 콜백 2에서는 콜백 1에서 데이터를 가져옵니다. 다음은 코드의 모양입니다.지연된 파이프와 파이프를 사용하는 체인 콜백
var getCall1 = function() {
return $.ajax(url, {
type: "GET",
data: { },
contentType: "application/json",
dataType: "json"
});
}
var getCall2 = function() {
return $.ajax(url, {
type: "GET",
data: {},
contentType: "application/json",
dataType: "json"
});
}
var callback1 = function (data)
{
alert('call 1 completed');
};
var callback2 = function (data)
{
alert('call 2 completed');
};
$.when(getCall1()).done(callBack1).pipe(getCall2()).done(callBack2);
무엇이 여기에 있습니까?
--Edit--
내가이 연기 호출에 그들을 깰 경우, 그것은하지만 작동 뭐죠 체인 및 파이프의 사용?
$.when(getCall1()).done(callBack1);
$.when(getCall2()).done(callBack2);
--Correct 방법은이 항아리
var getCall1 = function() {
return $.ajax(url, {
type: "GET",
data: { },
contentType: "application/json",
dataType: "json"
});
}.pipe(function (d){return d});
var getCall2 = function() {
return $.ajax(url, {
type: "GET",
data: {},
contentType: "application/json",
dataType: "json"
});
}.pipe(function (d){return d});
var callback1 = function (data)
{
alert('call 1 completed');
};
var callback2 = function (data)
{
alert('call 2 completed');
};
$.when(getCall1, getCall2).done(function(d1, d2){
callback1(d1);
callback2(d2);
});
로 새로운 jsFiddle은 샘플 코드에 그 오타인가? (낙타 사례 콜백 대신 콜백이어야 함) –
예. 그 오타. – Asdfg