当前位置: 首页 > 面试题库 >

angularJS中的$ http.get错误-成功不是函数

越狐若
2023-03-14
问题内容

收到此错误:

angular.min.js:122 TypeError:$
http.get(…)。success在Object.invoke(angular.min)的new(app.js:12)的getUserInfo(app.js:7)处不是函数.js:43)在Q.instance(angular.min.js:93)在p(angular.min.js:68)在g(angular.min.js:60)在g(angular.min.js:61)
)在g(angular.min.js:61)在angular.min.js:60在angular.min.js:21

这是我的代码:

var gitHub = angular.module('gitHub', []);

gitHub.controller('mainController', ['$scope', '$http', function($scope, $http) {

    var $scope.user = '';
    function getUserInfo($scope, $http){ 
        $http.get('https://api.github.com/users')
            .success(function (result) {
                $scope.user = result;
                console.log(result);
            });
    };
    getUserInfo($scope, $http);
}]);

这是HTML

<!DOCTYPE html>
<html ng-app="gitHub">
<head>
    <title>Github Users Directory</title>
    <script src="angular.min.js"></script>
    <script src="app.js"></script>
</head>
<body>
    <div ng-controller="mainController">
        <div>
            <h1>GitHub Users</h1>
            Who do you want to search for?<input type="text" name="FindHim" ng-model="queryName" />
            <button ng-click="getUserInfo()">Search</button>
        </div>
        <div>
            {{ user }}
        </div>

    </div>
</body>
</html>

问题答案:

.success.error方法已过时,已经从AngularJS1.6去除。请改用标准.then方法。

$http.get('https://api.github.com/users')
  .then(function (response) {

    var data = response.data;
    var status = response.status;
    var statusText = response.statusText;
    var headers = response.headers;
    var config = response.config;

    $scope.user = data;
    console.log(data);
});

弃用通知

$http传统方法的承诺.success,并.error已被弃用,并将在V1.6.0被删除。请改用标准.then方法。

— AngularJS(v1.5)$ http服务API参考-
弃用声明



 类似资料:
  • 问题内容: 我有此代码: 在我的本地环境中,工作正常,但在服务器中,返回此错误: TypeError:$ http.get(…)。成功不是函数 有任何想法吗?谢谢 问题答案: 该语法是正确的高达角1.4.3。 对于Angular v.1.6以下的版本,必须使用method。该方法带有两个参数:a 和将与响应对象一起调用的回调。 使用该方法,将函数附加到返回的。 像这样: 请参阅此处的参考。 方法也

  • 问题内容: 我正在尝试编写示例AngularJS和SpringMVC项目。spring方法可以正常工作,但是我的站点控制器中的函数声明存在问题。我的应用应该从文本输入中返回一个单词,但是当我单击按钮时,出现了以下错误: 这是我的index.html: 和controller.js: 我注意到,这一定是ng-click值中的函数声明存在某种问题。在现场启动时,controler.js可以正常运行,但

  • 问题内容: 我已经建立了一个工厂来处理我的控制器的功能,但是不知何故,控制器会在其中一个功能上返回错误: 错误:Auth.getUser(…)。成功不是函数@ http:// localhost:8080 / app / controllers / mainCtrl.js:10:1 … 我不知道这是怎么回事,其余功能似乎工作正常? 主控制器: 问题答案: 请参阅$ http服务文档中的 “ 弃用声

  • 问题内容: 我注意到在这里问了几次同样的问题,我尝试过解决这个问题,但是没有帮助。 我正在学习带蛋头视频的本教程。 但是,当我进入“控制器和控制器之间共享数据”部分时,我无法正常工作。 当我使用Chrome运行它时,在控制台中出现此错误: “参数“ FirstCtrl”不是函数,未定义”。 我真的不知道怎么了 代码与教程中的相同。 的HTML main.js 问题答案: 您的html中有2个未命名

  • 问题内容: 谁能告诉我这段代码出了什么问题?我尝试使用JavaScript提交表单,但显示错误“ .submit不是函数”。请参阅以下代码的更多详细信息: 我也尝试过这个: 两者都显示相同的错误:( 问题答案: 提交不是功能 表示您已将自己的提交按钮或其他元素命名为。将按钮重命名为,您的呼叫将神奇地工作。 将按钮命名为Submit时,将覆盖表单上的功能。