如何将 Angular-CLI 项目发布为 NPM 模块?

How do I publish an Angular-CLI project as an NPM module?

我正在使用 Angular-CLI 制作自己的 Angular 2 模块。如何为 import 准备模块?如何将最终输出发布到 NPM 以供其他 Angular2 项目使用?

原来是关于如何将使用Angular-CLI 制作的Angular2 NgModule 发布到NPM 的问题。有关发布到 NPM 的更多信息可以在 https://docs.npmjs.com/misc/developers 找到,但是 Angular-CLI 项目和 Angular 2 模块的细节超出了我的范围,因为我还没有发布 Angular2之前的 NPM 模块。


import { MyModule } from 'package/myModule'; 样式导入适用于 NPM 上发布的包,并通过检查本地和全局 node_modules 文件夹中的所需文件来解决。您可以通过向 NPM 发布一个空包然后使用 link 命令对您的代码 link 来模拟这一点,但我认为当您绕过他们的私有包解决方案时滥用 NPM 的服务。如果这是一个 public 模块,请记住只在必要时发布,并使用 linked 版本进行开发。

要从您的项目导入模块,您需要相对路径,更像是 import { MyModule } from './myModule/my.module';

我已经成功地将我的项目发布到 npm。 这是我所做的。

angular-cli 项目中,我的模块转到单个文件夹 (component-warpper)。 在该文件夹中,我添加了 index.ts 以及要导出的模块和组件列表。 我还添加了 package.json 文件(截图)。

然后在命令行中转到此文件夹并npm publish。 现在我可以在其他项目中将其作为 node_modules 导入。