在我的angularJS应用程序中,我已经如下配置了我的应用程序。我已经定义了一个模块 services 来定义我的所有工厂方法。
angular.module("services", []);
var app = angular
.module('myApp', [
'services'
]);
在另一个文件中,我在 services 模块中定义了一个工厂,但是当我运行应用程序时出现以下错误:
未知提供者:myServicesProvider< - myServices< - myCtrl
angular.module('services').factory('myServices', function ($http) {
return {
createPet(pet) {
return $http.post('/pets', pet);
}
};
});
angular.module('myApp')
.controller('myCtrl', myServices) {
});
我检查了stackoverflow中的很多帖子,我想我已经以正确的方式完成了定义。任何人都有线索?
答案 0 :(得分:0)
您的工厂中的括号错误,
这是工作代码:
angular.module("services", []);
var app = angular
.module('myApp', [
'services'
]);
app.controller('mainController', function($scope, myServices){
$scope.items = myServices.query();
$scope.bill = {};
$scope.totalBeforeDiscount = {};
$scope.totalPrice = function(){
var total = 0;
for (var i = 0; i <= $scope.items.length - 1; i++) {
total += $scope.items[i].price * $scope.items[i].quantity;
}
$scope.totalBeforeDiscount =total;
}
})
angular.module('services').factory('myServices', function ($http) {
var items = {};
return {
query: function() {
return [{
title: 'Paint pots',
quantity: 8,
price: 3.95
}, {
title: 'Polka dots',
quantity: 17,
price: 12.95
}, {
title: 'Pebbles',
quantity: 5,
price: 6.95
}];
}
}
});