如何注入模块并使它可用于应用程序的所有模块和子模块(获取未知的提供程序错误)

拉内舒

请注意,这不是以下内容的重复:如何注入模块并使它可进入Angular App

我有一个模块app.config,我想将其插入整个应用程序。

该模块需要在注入的所有其他模块和子模块(模块内部的模块)中可访问 myApp

例如,我的应用程序如下所示:

angular.module('myApp', [
    'app.config',
    'module#1',
    'module#2',
    'module#3',
    'module#4'    
])
.config...

/////////////////////////////////

这是 app.config

angular.module('app.config', []).
    constant('NAME1', 'Name1').
    constant('NAME2', 'Name2'); 
////////////////////

我想'app.config'以一种应该可访问的方式进行注入,这种注入module#500不是直接依赖于'myApp',而是依赖于module#1-反过来又是的依赖myApp

module#1是这样定义的(如图所示,module#500是的依存关系module#1):

 angular.module('module#1', [
        'module#500',
        'module#501',
        'module#502',
        ...    
    ]);

这是我的问题:

angular.module('module#500', []).
    service('serviceOne', serviceOne);

function ServiceOne($http, NAME1) {

    var service = {
        getMyProfile: function(){return $http.get('api/' + NAME1);}
    };

    return service;
}

问题-我收到一个错误->Uncaught Error: [$injector:unpr] Unknown provider: NAME1Provider <-NAME1 <- serviceOne但是我以为我将它注入了整个应用程序???

我不想module#500直接添加为依赖项,而不想'myApp'离开module#500作为的依赖项module#1我想离开module#1作为myApp

我也不想单独注入app.config每个模块。还有其他解决方案吗?

那将是烧瓶

如果您不想myApp依赖app.config(尽管这样做是正确的,因为它的子模块依赖于它),则可以使用手动引导加载配置模块

angular.bootstrap(document, ['myApp', 'app.config']);

代替ng-app="myApp"

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何对 Angular 应用程序子模块的所有组件执行 ng 测试

我的自定义提供程序出现错误“由于未知的提供程序而无法实例化模块应用程序”

Ecto | 如何在应用程序中获取所有架构模块

由于以下原因无法实例化模块应用程序:错误:模块“应用程序”不可用

运行React Native应用程序时有几个文件提供此模块错误

如何动态地将模块注入到主要的Angular应用程序模块

使用子模块应用程序编译Modular Boost 1.55.0

如何使用Koin DI将应用程序上下文从“应用程序”模块注入到“网络”模块

在另一个应用程序无法获取子模块导入正确

如何设置全局节点模块,以便所有应用程序都可以使用相同的模块

应用程序无法使用模块的模块

对于大型应用程序使用JsDoc3,如何将模块分组为部分/类别/子模块

如何配置Guice以要求对整个应用程序(对于所有模块)进行显式绑定

如何在React应用程序中导入highcharts子模块

Terraform模块和提供程序

启动 ejabberd 19.08 时如何修复“无法启动 ejabberd 应用程序:选项模块的值无效:未知 ejabberd 模块”

如何git标记所有子模块?

如何更新所有子模块?

如何导入所有子模块?

如何提取所有子模块的更改

在 react-native 中运行之前,如何让应用程序等待从从 firestore 获取数据的模块中获取所有数据?

在可用的应用程序模块中找不到运行“ java”的模块

哪个管理模块用于Rails应用程序

如何从Node.js中的其他应用程序注入模块

我的 Angular2+ 应用程序中的所有组件/模块现在都出现“No provider for Router”错误

尝试部署Flask应用程序时从beantalk中获取错误:“没有名为flask的模块”

如何从pytorch模块获取子模块序列?

android:从模块内部获取应用程序名称

基于SAAS的应用程序,希望所有模块只有一个布局页面