我有一个角色项目,我正在打破一个更好的文件结构,但是我在创建新服务时遇到错误Argument 'fn' is not a function, got undefined
。我有什么想法吗?
app.js
angular.module('app', [
'app.controllers'
]);
angular.module('app.controllers', ['leaflet-directive', 'app.services']);
angular.module('app.services', []);
main.controller.js
angular.module('app.controllers')
.controller('MainCtrl', MainCtrl);
function MainCtrl($scope, $window, leafletData, DataService) {
var main = this;
main.items = DataService.GetItems();
//Other controller stuff
};
data.service.js
angular.module("app.services")
.factory('DataService', DataService);
var DataService = function(){
return data = {
getItems: function(){
return [//data here];
}
};
}
答案 0 :(得分:4)
您的DataService声明是个问题。您在使用它之后再声明它。您应该将DataService的声明更改为function DataService()
,而不是将其设置为var以利用函数提升