deferred.pipe ([doneFilter] [, failFilter]) 정보
jQuery deferred.pipe ([doneFilter] [, failFilter])본문
deferred.pipe ([doneFilter] [, failFilter])
설명 : Deferreds를 필터링하거나 연결하는 유틸리티 메소드입니다.
Deprecation Notice : jQuery 1.8부터 deferred.pipe () 메소드는 더 이상 사용되지 않습니다. deferred.then()대신 이 방법을 사용해야합니다.
이 deferred.pipe()메소드는 함수를 통해 연기 된 상태와 값을 필터링하는 새로운 약속을 반환합니다. doneFilter및 failFilter기능은 원래의 연기 해결 / 거부 상태와 값을 필터링 할 수 있습니다. jQuery를 1.7로서 , 상기 방법은 또한 허용 progressFilter지연의 일본어에 대한 호출을 필터링하는 기능 notify이나 notifyWith방법. 이러한 필터 함수는 파이프 된 약속 done()또는 fail()콜백에 전달할 새 값을 반환하거나 해결 된 / 거부 된 상태 및 값을 파이프 된 약속의 콜백에 전달할 수있는 관찰 가능한 다른 개체 (지연된 약속, 약속 등)를 반환 할 수 있습니다. 사용 된 필터 함수가null지정되지 않은 경우, 파이프 된 약속은 원본과 동일한 값으로 해석되거나 거부됩니다.
예 :
필터 해결 값 :
var defer = $.Deferred(),
filtered = defer.pipe(function( value ) {
return value * 2;
});
defer.resolve( 5 );
filtered.done(function( value ) {
alert( "Value is ( 2*5 = ) 10: " + value );
});
필터 거부 값 :
var defer = $.Deferred(),
filtered = defer.pipe( null, function( value ) {
return value * 3;
});
defer.reject( 6 );
filtered.fail(function( value ) {
alert( "Value is ( 3*6 = ) 18: " + value );
});
체인 작업 :
var request = $.ajax( url, { dataType: "json" } ),
chained = request.pipe(function( data ) {
return $.ajax( url2, { data: { user: data.userId } } );
});
chained.done(function( data ) {
// data retrieved from url2 as provided by the first request
});
0
댓글 0개