我正在使用带有我的服务文件分开的路由的角度服务。 我在控制台中面对branchService是未定义的错误。参见Plunker code中的代码 这是branchService.js:
angular.module("myApp").service('branchService', ['$http', function ($http) {
var link = "http://localhost:8008/";
//----Get Dining Tables`enter code here`
this.getBranches = function ($scope) {
return $http({
method: "GET",
url: encodeURI(link + "Branch/GetBranches/"),
headers: { 'Content-Type': 'application/json' }
}).success(function (data) {
console.log(data);
}).error(function (data) {
console.log(data);
});
};
}]);
和myController.js在这里:
var app = angular.module("myApp", ['ngRoute']);
app.config(function ($routeProvider) {
$routeProvider
.when('/branches', {
templateUrl: 'branches.html',
controller: 'branchController'
})
.otherwise({
redirectTo: '/branches'
});
});
app.controller('branchController', ['$scope', '$filter', 'branchService', function ($scope, $filter, branchService) {
branchService.getBranches($scope);
}
当我运行Error:$ injector:modulerr 模块错误错误显示在控制台
中答案 0 :(得分:1)
您是否在index.html或任何第一页中添加了branchService.js文件的referance。
尝试在myController.js之后添加referance。
答案 1 :(得分:0)
在使用该服务之前先注入它以便您可以使用它
var app = angular.module("myApp", ['ngRoute', 'branchService']);
编辑:
这是branchController.js中的问题:
var app = angular.module("myApp", ['ngRoute']);
您再次注入了ngRoute
,事实上您已将其添加到app.js中:
var app = angular.module("myApp",['ngRoute']);
修复:删除ng route
var app = angular.module("myApp");
答案 2 :(得分:0)
你必须这样做。您的服务应该先在您的控制器之前加载。
var app = angular.module("myApp", ['ngRoute']);
app.config(function ($routeProvider) {
$routeProvider
.when('/branches', {
templateUrl: 'branches.html',
controller: 'branchController'
})
.otherwise({
redirectTo: '/branches'
});
});
app.service('branchService', ['$http', function ($http) {
var link = "http://localhost:8008/";
//----Get Dining Tables`enter code here`
this.getBranches = function ($scope) {
return $http({
method: "GET",
url: encodeURI(link + "Branch/GetBranches/"),
headers: { 'Content-Type': 'application/json' }
}).success(function (data) {
console.log(data);
}).error(function (data) {
console.log(data);
});
};
}]);
app.controller('branchController', ['$scope', '$filter', 'branchService', function ($scope, $filter, branchService) {
branchService.getBranches($scope);
}