jQuery Promise 的用法
- 例子
- $.when
- 参考资料
jQuery封装的很好了,傻瓜式调用即可。
例子
// 返回一个 promise 对象。其实 $.get 返回的就是 promise 对象,可以直接用的。我
function promiseDemo(){
var dtd = $.Deferred();
$.get('https://jquery/browser-support/')
.then(
function success(response){
// 你的代码写这里。。。
dtd.resolve({'msg':"这里就是成功向下传递的数据"});
},
function error(response){
// 你的代码写这里。。。
dtd.reject({'msg':"这里是失败向下传递的数据"});
}
);
return dtd.promise();
}
// 异步返回后触发这里
promiseDemo()
.done(function (data){// dtd.resolve 走这
console.log(data.msg);// "这里就是成功向下传递的数据"
})
.fail(function(data){// dtd.reject 走这
console.log(data.msg);// "这里是失败向下传递的数据"
})
.always( function() {
console.log("不管成功失败,都会执行这里");
});
$.when
多个请求都完成后执行 。
// callback(data, textStatus, jqXHR)
$.when($.get('./a.json'), $.get('./b.json')).done(function ([a_data], [b_data]) {
console.log("a_data", a_data);
console.log("b_data", b_data);
});
参考资料
官网API :https://api.jquery/category/deferred-object/
中文文档:http://jquery.cuishifeng/index.html (官网的排版真可以参考一下这个,方便很多)
更多推荐
jQuery Promise 的用法
发布评论