加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

AngularJS $http.post(..) – 错误:$http未定义

发布时间:2020-12-17 07:39:28 所属栏目:安全 来源:网络整理
导读:我第一次尝试AngularJS.当使用$http.post(“url”,数据)功能时,我得到一个错误:$http没有定义控制台消息. 在我的HTML页面的顶部,我包括所有其他JS导入后的AngularJS. 我还包括其他JavaScript库由于小部件依赖关系等.我的脚本导入部分如下所示: script src=
我第一次尝试AngularJS.当使用$http.post(“url”,数据)功能时,我得到一个错误:$http没有定义控制台消息.

在我的HTML页面的顶部,我包括所有其他JS导入后的AngularJS.

我还包括其他JavaScript库由于小部件依赖关系等.我的脚本导入部分如下所示:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js" type="text/javascript"></script>
<script src="http://www.trirand.com/blog/jqgrid/js/i18n/grid.locale-en.js" type="text/javascript"></script>
<script src="http://www.trirand.com/blog/jqgrid/js/jquery.jqGrid.min.js" type="text/javascript"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.0/jquery-ui.min.js"></script>

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

我有一个控制器,我用来发送一些数据到服务器:

function FormCtrl($scope) {
  $scope.sendData = function(){
        var data = "firstName=" + $scope.firstName + "&" +
            "lastName=" + $scope.lastName + "&" +
            "address=" + $scope.address + "&" +
            "postcode=" + $scope.postcode;

        $http.post("/data/person/put",data);
     };
}

sendData函数附加到一个按钮.所有的工作正常,直到调用$http.post(…),此时控制台输出错误.

完整的错误列表是:

Error: $http is not defined
$scope.sendData@http://localhost:8080/angularjs/:96
Mc/x/<@https://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js:71
ec[c]</</</<@https://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js:142
e.prototype.$eval@https://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js:87
e.prototype.$apply@https://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js:87
ec[c]</</<@https://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js:142
c.event.handle@http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js:63
c.event.add/o@http://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js:57

https://ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js
Line 61

我需要做别的事情来配置AngularJS才能使用$http.post函数吗?

我从文件的“AngularJS快捷方式”部分直接提取了这些用法:http://docs.angularjs.org/api/ng.$http

谁能帮忙?

谢谢
亚当

函数FormCtrl($scope){应该是函数FormCtrl($scope,$http){.

您需要注入控制器所需的所有服务,在这种情况下,您使用$scope和$http服务,但是您只注入了导致错误的$scope.

例如:

function FormCtrl($scope,$http) {
    ....
}
FormCtrl.$inject = ['$scope','$http'];

您可以阅读关于注射并发症的注意事项,细化here,请参阅“Minifying注意事项”

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读