服务获取数据但不工作angularjs

时间:2017-04-04 13:38:19

标签: angularjs

我正在使用服务获取数据但不起作用。这是我的代码

services.js

  angular.factory('myServices',myServices);
        myServices.$inject=['$http'];


            function myServices($http){
   return  {
           getAllShop:getAllShop
            }
            function getAllShop(){
                    return
                     $http.get('data.json')
                        .then(onSuccess);
                    function onSuccess(response){
                        return response.data;
                    }

                }

            }

这是我的controller.js

shopController.$inject=['$http','myServices'];
function shopController($http,myServices){
    var vm = this;
    vm.mydata=[];
        function getAllShop(){
            return myServices.getAllShop().then(function(data){
                vm.mydata = data;
                return vm.mydata;

            })

        }
}

这是我的HTML

<tr ng-repeat="data in vm.mydata">
 {{data.name}}
{{data.price}}

但是在console.log中没有显示任何错误。哪里错了。请帮助我

1 个答案:

答案 0 :(得分:0)

您从未在控制器中调用getAllShop(),只定义了它。只需将此行添加到您的控制器中就可以了:

function shopController($http,myServices) {
    ...
    getAllShop();
}