繁体   English   中英

动态加载模块? angular2

[英]Dynamically load Modules? angular2

我们正在忙于构建一个相当大的企业应用程序,其中包含大量的模块和组件。 我面临的一个问题是,我需要允许公司中的其他开发人员为该应用程序开发组件,而无需他们更改应用程序本身中使用的代码。

一个例子是:

“ Peter”是组织内另一个业务部门的开发人员,需要构建图表组件。 我们不希望Peter更改大型应用程序的代码,而是由他构建并维护自己的“模块”(这些组件将通过设置的接口构建,以允许托管应用程序与子应用程序进行通信)。图表组件)来处理他在图表组件中所需的所有功能。 然后,在大型应用程序内部,我们需要能够指向该模块(通过配置)并动态加载它。

这里的要点是,我需要允许任何开发人员引用他自己的模块,而我的应用程序并不特别了解该组件。 我无法将其包含在我的entryComponents或声明中,因为它需要在运行时加载,并且应该被允许根据使用该应用程序的业务部门的要求进行更改。

我一直在研究SystemJsNgModuleLoader ,但是我看不到无法直接加载应用程序中没有的组件的方法。

我不确定这是否可行,以及是否错过了某处。 任何指导/建议将不胜感激。

源代码控制

使用Git进行源代码控制。

发展

开发功能模块。 将它们捆绑到一个带有可用源的UMD捆绑包中。 这使您的开发人员可以:

  1. 适用于生产的静态束的目标AOT
  2. 在开发期间加载动态模块

部署

将模块作为版本包部署到NPM(设置私有托管的NPM存储库)。

部署后,您的开发人员可以像安装其他NPM软件包一样安装,版本化和管理软件包依赖项:

npm install <package>

暂无
暂无

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

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