AngularJS - 使用服务从服务器获取 JSON

Posted

技术标签:

【中文标题】AngularJS - 使用服务从服务器获取 JSON【英文标题】:AngularJS - Using a service to get JSON from server 【发布时间】:2021-01-11 03:43:05 【问题描述】:

我正在尝试学习 AngularJS,需要一些帮助。我使用的是 1.4.9 版本,我正在尝试创建一个从服务器获取 JSON 的服务,但出现以下错误:“serviceName is not defined”

    <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;
        );
    );

【问题讨论】:

【参考方案1】:

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

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

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

【讨论】:

以上是关于AngularJS - 使用服务从服务器获取 JSON的主要内容,如果未能解决你的问题,请参考以下文章

获取从 angularJS 中的异步 $http 服务获得的对象,以便在 $scope 中全局访问

如何将 mongodb 数据从服务器(node.js)检索到我的 AngularJS 路由

如何使用 REST 将数据从 AngularJS 发布到 Struts 2

angularjs自定义数据获取服务

如何在 AngularJS 中使用 $http.get 从 jsp 页面获取响应?

AngularJS,传单。如何从第三方服务动态获取纬度和经度坐标?