调用Web服务api

时间:2016-01-27 15:23:33

标签: angularjs json api service factory

我正在尝试获取Web服务API但我无法显示 什么,我是angularjs的新手,请帮助我。 我复制了我正在使用的控制器和工厂代码。

控制器

app.controller('myController', ['$scope', 'fetchService', function($scope, fetchService){
    $scope.countries = fetchService.get();
}]);

服务

var app = angular.module('app',[]);
app.factory('fetchService', ['$http', function($http){
    return{
        get: function(){
            return $http.get('api/data4.json').success(function(response){
                return response.data;
            });
        }
    }
}]);

1 个答案:

答案 0 :(得分:0)

问题是fetchService.get()是异步的($http返回的承诺),所以你必须使用.then(),如下所示:

app.controller('myController', ['$scope', 'fetchService', function($scope, fetchService){
    fetchService.get()
        .then(function(response) {
            $scope.countries = response;
        });
}]);