错误:Angularjs 1.5中控制器上的$ injector:unpr未知提供程序

时间:2017-11-08 06:43:20

标签: javascript angularjs

我是Angularjs的新手并且现在正在学习。我有一个控制器 EventlistController.js

    eventsApp.controller('EventListController',function EventListController($scope,$location,$eventData){
$scope.events=eventData.getAllEvents();
});

我的app.js如下 `

var eventsApp = angular.module('eventsApp', ['ngSanitize','ngResource','ngRoute']).config(
    function($routeProvider){
    $routeProvider.when('/events',{
        templateUrl:'templates/EventList.html',
        controller:'EventListController'
        });
});

EventData Service如下

eventsApp.factory('eventData', function ($resource) {
    return {
        getEvent: function () {
            var resource = $resource('http://localhost:8001/api/event/:id', { id: '@id' });
            return resource.get({ id: 1 });
        },
        save: function (event) {
            var resource = $resource.get('http://localhost:8001/api/event/getNextEventId');
            event.id = resource.get();
            console.log(event.id);
           return resource.save();
        },
        getAllEvents: function() {
            var resource = $resource('http://localhost:8001/api/event');
            return resource.query();
        }
    }
});

当我点击路线http://localhost:8000/#/events时出现[$injector:unpr]错误。我已经浏览了这个文档。不确定错误是什么。关于我在这里缺少什么的任何指示?

1 个答案:

答案 0 :(得分:4)

您已经创建了eventData,并且您正在使用$ eventData。 请尝试仅使用eventData。你注射了不正确的服务。 你可以跳过写这个名字'EventListController'。

eventsApp.controller('EventListController',function($scope,$location,eventData){
$scope.events=eventData.getAllEvents();
});