源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2020-09-21 17:02 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:jquery Deferred 快速解决异步回调的问题
[b]jquery Deferred 快速解决异步回调的问题[/b]
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){})
[b]//相关API 分成3类[/b] 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 [b]管道[/b]
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 快速解决异步回调的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程素材网。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部