【问题标题】:How do I publish an Angular-CLI project as an NPM module?如何将 Angular-CLI 项目发布为 NPM 模块?
【发布时间】:2017-03-13 13:44:33
【问题描述】:

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

【问题讨论】:

    标签: angular npm angular-cli


    【解决方案1】:

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

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

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

    【讨论】:

    • 我们还需要类型定义文件(*.d.ts)吗?
    • 有一个帖子和示例代码 here 展示了如何在 Angular-cli 项目中隔离模块并将其发布为 npm 包,这可能会有所帮助。
    【解决方案2】:

    原来这是一个关于如何将使用 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 发布一个空包然后使用链接命令来链接你的代码来模拟这一点,但是当你绕过他们的私有包解决方案时,我会考虑滥用 NPM 的服务。如果这是一个公共模块,请记住仅在必要时发布,并使用linked 版本进行开发。

    要从项目中导入模块,您需要相对路径,类似于import { MyModule } from './myModule/my.module';

    【讨论】:

    • 以及如何为 npm 准备 ng 模块?有什么教程吗?
    猜你喜欢
    • 2017-08-25
    • 1970-01-01
    • 2017-01-17
    • 1970-01-01
    • 2015-09-06
    • 2017-06-25
    • 1970-01-01
    • 2017-01-13
    • 2017-10-25
    相关资源
    最近更新 更多