简要咨询咨询QQ网站导航网站搜索手机站点联系我们设为首页加入收藏 

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

来源:易贤网   阅读:824 次  日期:2016-07-08 15:15:04

温馨提示:易贤网小编为您整理了“jquery Deferred 快速解决异步回调的问题”,方便广大网友查阅!

下面小编就为大家带来一篇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 快速解决异步回调的问题就是小编分享给大家的全部内容了,希望能给大家一个参考

更多信息请查看网络编程
点此处就本文及相关问题在本站进行非正式的简要咨询(便捷快速)】     【点此处查询各地各类考试咨询QQ号码及交流群
上一篇:JavaScript数组去重的两种方法推荐
下一篇:JS模拟简易滚动条效果代码(附demo源码)
易贤网手机网站地址:jquery Deferred 快速解决异步回调的问题
由于各方面情况的不断调整与变化,易贤网提供的所有考试信息和咨询回复仅供参考,敬请考生以权威部门公布的正式信息和咨询为准!