繁体   English   中英

Angular:如何创建内部工具但不使用模块导出

[英]Angular: How to create internal utils but do not export with module

我正在创建一个角度模块MyModule 该模块包含多个子模块。

angular.module('MyModule', [
  'MyModule.SubModule1',
  'MyModule.SubModule2',
  'MyModule.SubModule3'
]);

angular.module('MyModule.SubModule1', [
  'MyModule.Util'
]);

如您所见,有模块MyModule.Util提供了辅助函数,它实际上是在工厂中编写的。 无论我是否显式导出MyModule.Util ,它都会与我的所有模块一起导出。

但我希望这个MyModule.Util只能由内部的子模块使用。 那可能吗?

截至今天(v1.4.5)在Angular中不可能

一旦声明了模块依赖项,Angular 就会从依赖项树中导入所有模块,并使它们对整个应用程序可用。

如果您只需要辅助函数(而不是 Angular 服务/指令/控制器),那么您可以只使用“私有”函数:

(function(angular){

  function privateHelperFunction1(){
  }

  angular.module("MyModule.SubModule1", [])
    .service("FooSvc", function(){
      this.doSomething = privateHelperFunction1;
    })

})(angular)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM