提供Angular模块

时间:2017-10-26 14:36:21

标签: angular npm angular-cli angular-module

我目前正在开发一个Angular 4模块,需要将其导入到更大的Angular 4单页面应用程序中。该模块引导一个类似于窗口小部件的组件,该组件允许访问模块的其他功能。

页面和模块是由不同开发团队开发的独立项目,它们之间没有接口。他们都是使用Angular CLI开发的。

问题:对于我来说,提供完整模块的简单方法是什么,所以它可以被其他团队嵌入到页面中?

我到目前为止的想法:

  • 我不介意分享整个项目。显然,他们可以将所有相关代码复制到他们的项目中。但这似乎非常混乱,并且需要手动合并依赖项。
  • 将模块发布为NPM包可以解决这些问题,但出于法律原因,我不允许推送到公共存储库并且不愿意为此用例设置私有存储库。

任何只需要生产构建模块的解决方案的奖励积分(作为aot-compiled js-files)!

2 个答案:

答案 0 :(得分:1)

在他们的package.json中,他们可以直接引用你的git发布分支,

“yourModule”:“git + https://yourepo.git#release/1.0

Reference here

答案 1 :(得分:0)

正如Juli3n在他的回答中指出的那样,NPM在处理非标准"时非常灵活。库。但是,我低估了从Angular CLI项目构建库包所需的工作量。

我发现的最有效的解决方案是ng-packagr。它从现有的Angular(CLI)项目中创建一个专用的库项目,只需要很少的配置。可以找到一个非常好的分步教程on Medium