AngularJS $http未定义

前端之家收集整理的这篇文章主要介绍了AngularJS $http未定义前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我得到TypeError:运行此模块时不能调用方法’get’为undefined:
angular.module('EventList',[])

.config([ '$routeProvider',function config($routeProvider){
    $routeProvider.when(Urls.EVENT_LIST_PAGE,{
        templateUrl: 'app/EventList/event-list.html',controller: 'EventListCtrl'
      });
 }])


.controller('EventListCtrl',['$scope','$http',function EventListController($scope,$location,$http) {
  $scope.events = [];
  $http.get('http://localhost:8000/event').
    success(function (data,status) {
      $scope.events = data;
      for (var i = 0; i < $scope.events.length; i++) {
        $scope.events[i].event_url = ('#' + Urls.EVENT_PAGE + '/' + $scope.events[i]._id);
      }
    }).
    error(function (data,status) {
      $scope.data = data || "Request Failed";
    }
  );

}]);

我在这里做错了什么,我该怎么解决

当使用括号符号时,函数之前的依赖列表需要匹配要注入到函数中的服务.

您的EventsListController函数中有一个额外的$位置服务,因此请更改此:

.controller('EventListCtrl',$http) {
// controller code goes here
}]);

到这个:

.controller('EventListCtrl',$http) {
// controller code goes here
}]);

关键的变化是:函数EventListController($scope,$http)而不是函数EventListController($scope,$http)

猜你在找的Angularjs相关文章