gpt4 book ai didi

javascript - 未找到 Angular JS 服务(无法实例化模块)

转载 作者:行者123 更新时间:2023-12-03 10:48:42 25 4
gpt4 key购买 nike

我有 3 个具有以下层次结构的模块

  • app.js
    • 模块.js
      • 子模块.js

app.js

(function(ng, module){
module.config([function(){
console.log('main app');
}]);

}) (angular, angular.module('app', ['module']));

module.js

(function(ng, module){

module.config(['service', function(service){
console.log('module');
}]);

}) (angular, angular.module('module', ['sub-module']));

子模块.js

(function (ng, module) {
module.factory('service', [function () {
console.log('test');
return {};
}]);

})(angular, angular.module('sub-module', []));

index.html

<html ng-app="app">

<head>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.25/angular.min.js"></script>
<script src="app.js"></script>
<script src="module.js"></script>
<script src="sub-module.js"></script>
</head>

<body>
<h1>Hello Plunker!</h1>
</body>

</html>

plnkr:http://plnkr.co/edit/8BHhpZHrIYpTd5gn0IsZ?p=preview

我在控制台中出现此错误:未捕获错误:[$injector:modulerr]

喷油器出了什么问题?

最佳答案

您正在尝试配置一个名为 service 的提供程序,但该提供程序不存在:

注意:下次使用 Angular 的非缩小版本时,它将为您提供更多信息。

如果您想配置名为服务的工厂,则必须将其设为提供者:

(function (ng, module) {
module.provider('service', [function () {
console.log('test');
return {
$get: function() { return {}; };
};
}]);

})(angular, angular.module('sub-module', []));

您还可以通过注入(inject) name_of_the_service + Provider 来配置提供商,根据您的情况:

(function(ng, module){

module.config(['serviceProvider', function(serviceProvider){
console.log('module');
}]);

}) (angular, angular.module('module', ['sub-module']));

关于javascript - 未找到 Angular JS 服务(无法实例化模块),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28482456/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com