我正在构建一个应用程序来动态加载和显示AngularJS中数据库的数据,但是当我尝试访问我的ASP.Net(.ASMX Web服务)时(使用$ http.get()),我接收错误:TypeError:$ http.get(...)。then(...)。controller不是一个函数 请帮帮....
控制器代码:
.controller("studentsController", function ($scope, $http ) {
$http.get("StudentService.asmx/GetAllStudents")
.then(function (response) {
$scope.students = response.data;
})
students.html代码:
<h1>List of Students</</h1>
<ul>
<li ng-repeat="student in students">
{{student.name}}
</li>
</ul>
答案 0 :(得分:1)
您需要在角度服务和控制器中注入$ http服务,初始化它并调用Web服务。 要么 你可以将你的代码包装在(function(){(你的角度控制器)})()。
中答案 1 :(得分:1)
首先确保您的Web服务正常运行。
按以下方式更改控制器代码:
angular.module('myapp')
.controller("studentsController",['$scope', '$http', function (scope, http ) {
http.get("StudentService.asmx/GetAllStudents")
.success(function(data) {
scope.students = data;
})
.error(function(data, status) {
console.error('Response error', status, data);
})
}]);
未经测试,但应该可以使用。