你的位置:首页 > 软件开发 > Java > Angularjs promise对象解析

Angularjs promise对象解析

发布时间:2015-07-07 14:00:04
1、先来看一段Demo,看完这个demo你可以思考下如果使用$.ajax如何处理同样的逻辑,使用ng的promise有何优势?var ngApp=angular.module(ngApp,[]); /************************************ ...

1、先来看一段Demo,看完这个demo你可以思考下如果使用$.ajax如何处理同样的逻辑,使用ng的promise有何优势?

var ngApp=angular.module('ngApp',[]);			/******************************************************************* * $q为内置服务****************************************************************/ngApp.factory('UserInfoService',['$http','$q',function($http,$q){	return{	  query:function(){		var defer=$q.defer(); //声明延后执行		$http({method:'GET',url:'data/students.json'}).		success(function(data,status,headers,config){			defer.resolve(data); //声明执行成功			console.log('UserInfoService success');		}).		error(function(data,status,headers,config){			defer.reject();   //声明执行失败		});								return defer.promise; //返回承诺,返回获取数据的API		}		}	}]);				ngApp.controller('MainCtrl',['$scope','UserInfoService',function($scope,UserInfoService){	     var promise = UserInfoService.query(); //同步调用,获取承诺接口		promise.then(function(data){			$scope.user=data; //调用承诺接口resolove()			console.log('MainCtrl ...');			},function(data){			 $scope.user={error:'数据不存在。。。'}; //调用承诺接口reject();			});							}]);

原标题:Angularjs promise对象解析

关键词:JS

JS
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。