我是靠谱客的博主 甜甜高跟鞋,最近开发中收集的这篇文章主要介绍jquery Deferred 快速解决异步回调的问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

jquery Deferred 快速解决异步回调的问题

function ok(name){

  var dfd = new $.Deferred();
  callback:func(){

     return dfd.resolve( response );
  }

  return dfd.promise();
}

$.when(ok(1),ok(2)).then(function(resp1,resp2){})

//相关API 分成3类

1类:$.when(pro1,pro1) 将多个 promise 对象以and的关系 合并为1个

2类:promise 激发为 解决 deferred.resolve([ args ] ) deferred.resolveWith( context, [ args ] )

和 拒绝 .reject  .rejectWith

context 上下文 替换 this 和通知 .notify  .notifyWith

3类: 对激发的响应  解决时deferred.done(args) 拒绝时 deferred.fail() 通知时 deferred.progress()

不管 解决 或 拒绝 deferred.always()


deferred.then( doneCallbacks, failCallbacks [, progressCallbacks] )


promise(或者叫deferred 延迟对象如何获取?)

var dfd = new $.Deferred(); return dfd.promise();

返回promise当前状态

deferred.state()  pending(尚未完成) resolved rejected

管道

deferred.pipe( [ doneFilter ], [ failFilter ] ) 


var defer = $.Deferred()

var filtered = defer.pipe( null, function( value ) {

   return value * 3;
});

defer.reject( 6 );
filtered.fail(function( value ) {
   alert( "Value is ( 3*6 = ) 18: " + value );
});

以上这篇jquery Deferred 快速解决异步回调的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

最后

以上就是甜甜高跟鞋为你收集整理的jquery Deferred 快速解决异步回调的问题的全部内容,希望文章能够帮你解决jquery Deferred 快速解决异步回调的问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(99)

评论列表共有 0 条评论

立即
投稿
返回
顶部