我对角js很新。 任何人都可以打电话给我,为什么我得到一个错误,说无法从控制器访问工厂中的功能。
错误:UserService.getAllCustomers不是函数
添加
时会发生这种情况 App.service('UserService', function () { })
到控制器。 如果没有添加,则提供
错误:[$ injector:unpr]未知 provider:serServiceProvider< -UserService< - UserController
答案 0 :(得分:0)
你应该喜欢:
angular.module('MyApp')
.factory('serviceName',[
function () {
return function () {
/*your code */
};
}]);
angular.module('MyApp')
.controller('controllerName',['serviceName'
function (serviceName) {
}]);
答案 1 :(得分:0)
userService没有“getAllCustomers”
var App= angular.module('myApp', []);
App.controller("MyCtrl", ['UserService', function(UserService) {
UserService.getAllCustomers();
}]);
App.service('UserService', function() {
this.getAllCustomers = function() {
alert('getAllCustomers');
}
});
注意:如果您从应用程序中删除了“UserService”,那么UserService在应用程序中不可用,但是您被注入控制器然后angular将检查UserService是否已创建,如果未创建,它将抛出错误如错误:
[$ injector:unpr]未知提供者:serServiceProvider< -UserService< - UserController的