如何打包我的 ng-cli 应用程序以便通过 NPM 重新分发?

How can I package my ng-cli app for redistribution via NPM?

如标​​题所述,我正在寻找 'best practices' 或有关如何打包通过 angular-cli 创建的应用程序以通过 NPM 重新分发的指南。

我的想法是将我的主应用程序作为其自己的存储库,但包括我想重用的模块作为 git 子模块,但这似乎不是处理的最佳方式它,因为安装扩展子模块的用户无法访问应用程序的核心 boostrapping。我也不希望第三方开发人员必须 学习 git 子模块,因为它们可能有点棘手。

编辑: 文件夹结构目前

/
src/
   app/
       core/ # main module
       shared/ # shared modules used by core
       ui/ # UI module specifically for general UI components

模块、核心、共享和 UI 是我想要捆绑到一个应用程序中的东西,开发人员可以简单地 npm 安装并导入到他们现有的项目中。

有什么想法吗?

我想要的功能尚未实现:

https://github.com/angular/angular-cli/issues/1692

所有变通办法似乎只涵盖了我想要的部分内容,并且不允许您使用 CLI 开发基础应用程序。

解决方案项目:

http://dbarnes.me/writing-an-aot-compliant-angular-library/

https://github.com/filipesilva/angular-quickstart-lib

https://medium.com/@cyrilletuzi/how-to-build-and-publish-an-angular-module-7ad19c0b4464