angular ajax的使用及controller与service分层

一个简单的例子,控制层:
.controller('publishController',['$scope','publishService', function($scope,publishService){ publishService.getData().then( function(answer){ $scope.data = answer.data; console.info(answer); }, function(error){ $scope.error = error; } ); }])

  服务层:javascript

app.service('publishService',['$http','$q',function($http,$q){
return {
	getData:function(){
        var deferred = $q.defer();
        var promise = $http.post(url);
         promise.then(
                  // 通信成功的处理
                  function(answer){
                    //在这里能够对返回的数据集作必定的处理,再交由controller进行处理
                    answer.status = true;
                    deferred.resolve(answer);
                  },
                  // 通信失败的处理
                  function(error){
                    // 能够先对失败的数据集作处理,再交由controller进行处理
                    error.status = false;
                    deferred.reject(error);
                  });
                //返回promise对象,交由controller继续处理成功、失败的业务回调
        return deferred.promise;
    }
}
}]);

  app:java

var app = angular.module("myApp", ['ngAnimate','ngRoute']);
相关文章
相关标签/搜索