AngularJS中的promise用法分析
本文实例讲述了AngularJS中的promise用法。分享给大家供大家参考,具体如下:
JavaScript异步回调有好处也有坏处,回调函数大量嵌套十分复杂.所以javascript中还有另一种异步处理模式叫promises.在AngularJS中的实现就是$q服务.
下面是一些小例子.
then,catch,finally
在链最后的catch为整个链式处理提供一个异常处理点
在链最后的finally总是会被执行,不管promise被处理或者被拒绝,起清理作用
varmyapp=angular.module('myapp',[]); myapp.controller('myController',function($scope,$q){ $scope.send=function(){ vardeferred=$q.defer(); varpromise=deferred.promise; promise .then(function(){ console.log('resolve.....') },function(){ console.log('reject.....'); },function(){ console.log('notify.....'); }) .catch(function(){ console.log('catch..error..') }) .finally(function(){ console.log('anywherewillbecalled..'); }); deferred.reject('resolve'); }; }); click