AngularJS $q


updatePushId=function($q,pushid)
{
var d=$q.defer();
var data ={pushid:pushid};
server.api("/updateRId",data).success(function(res){
if(res.resultcode==1){
d.resolve('更新成功.');
}
}).error(function(res)
{
d.reject('更新失败');
})
return d.promise;
}
}


$q.defer 创建一个延迟对象 使用defer来标记当前函数状态(成功,失败) defer可以创建一个promise对象 通过promise来执行后续延迟方法

defer对象方法
resolve(value) 执行promise  value值 或对象
reject(error)  拒绝promise  error值 或对象
notify(value)  通知当前函数执行状态可多次调用


promise处理函数 promise.then(success,error,notify)

当promise通过时执行success

当promise被拒绝是执行error
当promise 有状态通知则调用notify(可多次)
posted @ 2015-12-18 23:47  loveplz  阅读(216)  评论(0编辑  收藏  举报