我是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服务如下
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]
错误。我已经阅读了有关此文档的文档。不知道错误是什么。关于我在这里缺少什么的任何指示? 最佳答案
您已经创建了eventData,并且正在使用$ eventData。
尝试仅使用eventData。您注入的服务不正确。
您可以跳过编写此名称'EventListController'的操作。
eventsApp.controller('EventListController',function($scope,$location,eventData){
$scope.events=eventData.getAllEvents();
});