Angular 6 Libraries作为npm包的替代品

时间:2018-05-16 21:23:08

标签: angular angular6 angular-cli-v6 angular-library

我正在尝试找到在各种角度应用程序(一些现有的,一些新的)之间共享角度代码(包含模块,服务,组件等)的最佳方式。我想标准解决方案是将此共享代码发布为npm包,但由于一系列原因,这是不可能的。 Angular 6库似乎是我的用例的候选者,但我不确定:

  • 我可以为一组库(即没有应用程序)创建角度工作区吗?
  • 我可以从另一个工作区(即包含我的应用程序的工作区)引用一个工作区中的库吗?

2 个答案:

答案 0 :(得分:2)

对这两个问题的回答是肯定的。这里有更多细节如何使用git

  1. 为您的库创建单独的git存储库,并通过GIT SUBMODULES将其链接到项目中的src/commons(作为示例)文件夹。

  2. 当您将库git存储库链接为项目的子模块时,您可以直接从项目中对库进行提交/推送更改(如果使用SourceTree,这非常简单)。这意味着您可以直接从项目更新库,但您需要记住不要在src/commons之外创建依赖项。

答案 1 :(得分:-2)

这是一篇很棒的文章,不仅介绍了创建一个库,还介绍了如何打包它,然后将其导入另一个Angular项目。
https://blog.angularindepth.com/creating-a-library-in-angular-6-part-2-6e2bc1e14121