首页 > 解决方案 > AngularJS - 使用服务从服务器获取 JSON

问题描述

我正在尝试学习 AngularJS,需要一些帮助。我正在使用 1.4.9 版本,我正在尝试创建一个从服务器获取 JSON 的服务,但我收到以下错误:“未定义服务名称”

    <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.9/angular.min.js"></script>

这是我的服务:

    app.service('serviceName', function ($http, $q) {
        var url= "myURL";
            function getData() {
                return $http.get(url);
            }
            return {
                getData: getData,
            }
        }
    );

这是我的控制器:

    app.controller("myController", function ($scope, $http) {
        serviceName.getData().then(function (response) {
            $scope.myField = response.data;
        });
    });

标签: jsonangularjsservice

解决方案


您需要将服务注入控制器,如下所示:

    app.controller("myController", function ($scope, serviceName) {
        serviceName.getData().then(function (response) {
            $scope.myField = response.data;
        });
    });

而且您不需要$http,因为服务中使用了它;)


推荐阅读