我们正忙着构建一个相当大的企业应用程序,它有大量的模块和组件。我有一个问题,我需要允许公司的其他开发人员为这个应用程序开发组件,而不必更改应用程序本身使用的代码。
一个例子是:
'彼得'是来自组织内部另一个业务部门的开发人员需要构建一个图表组件。我们不希望Peter改变较大应用程序的代码,相反,他会构建并维护自己的“模块”。 (这些组件将构建在一个集合界面之上,以允许托管应用程序与子图表组件进行通信,以处理他的图表组件中所需的所有功能。在较大的应用程序内部,我们需要能够指向此模块(通过配置)并动态加载它。
这里的要点是我需要允许任何开发人员引用他自己的模块,而不需要我的应用程序专门知道该组件。我不能将它放在我的entryComponents或声明中,因为它需要在运行时加载,并且应该允许根据使用该应用程序的业务部门的要求进行更改。
我一直在关注SystemJsNgModuleLoader
,但我认为无法加载不直接属于我的应用程序的组件。
我不确定这是否可行以及我是否遗漏了某些地方。任何指导/建议将不胜感激。
答案 0 :(得分:0)
来源控制
使用Git进行源代码管理。
<强>开发强>
开发功能模块。将它们捆绑成一个UMD包,其中包含可用的源。这允许您的开发人员:
<强>部署强>
将模块作为版本化软件包部署到NPM(设置私有托管的NPM存储库)。
部署后,您的开发人员可以像安装任何其他NPM软件包一样安装,版本和管理软件包依赖项:
npm install <package>