zoukankan      html  css  js  c++  java
  • angularJS factory中包含xhr时,通过promise获取结果

     1 angular.module('shopping', []).
     2   factory('shoppingData',function($http, $q){
     3     return{
     4       apiPath:'/api/shoppingCart/',
     5       getAllItems: function(){
     6         //Creating a deferred object
     7         var deferred = $q.defer();
     8 
     9         //Calling Web API to fetch shopping cart items
    10         $http.get(this.apiPath).success(function(data){
    11           //Passing data to deferred's resolve function on successful completion
    12           deferred.resolve(data);
    13       }).error(function(){
    14 
    15         //Sending a friendly error message in case of failure
    16         deferred.reject("An error occured while fetching items");
    17       });
    18 
    19       //Returning the promise object
    20       return deferred.promise;
    21     }
    22   }
    23 }
    24 
    25 Following is the controller consuming the above custom service: 
    26 function ShoppingCartCtrl($scope, shoppingData) {
    27   $scope.items = [];
    28 
    29   function refreshItems(){
    30     shoppingData.getAllItems().then(function(data){
    31       $scope.items = data;
    32     },
    33     function(errorMessage){
    34       $scope.error=errorMessage;
    35     });
    36   };
    37 
    38   refreshItems();
    39 };

    详见:http://sravi-kiran.blogspot.com/2013/03/MovingAjaxCallsToACustomServiceInAngularJS.html

  • 相关阅读:
    C#不显示在任务栏
    打开文件,文件夹
    C#文本操作
    C#路径2
    C#当前程序路径获取
    HDU 5155 Harry And Magic Box dp
    POJ 1971 Parallelogram Counting
    CodeForces 479C Exams 贪心
    CodeForces 508E Arthur and Brackets 贪心
    CodeForces 483B 二分答案
  • 原文地址:https://www.cnblogs.com/luckyflower/p/4140216.html
Copyright © 2011-2022 走看看