【问题标题】:How to share React Components between projects如何在项目之间共享 React 组件
【发布时间】:2017-09-11 04:36:48
【问题描述】:

我构建了一个想要在单独项目中使用的组件。使用 NPM 跨项目重用此组件的最简单的最佳方法是什么?

【问题讨论】:

    标签: reactjs npm


    【解决方案1】:

    您还没有表明是否要将此组件保密,因此我将通过两种方式回答:

    如果你要开源你的组件

    这是最简单的:将您的组件发布为npm 包(请参阅文档here)。然后像在您将使用组件的项目中安装任何其他软件包一样安装您的软件包。

    如果您希望保密

    你有几个选择:

    1. 为npm (docs here) 上的私有模块付费。如果你走这条路,你可以像安装任何其他包一样安装你的包。

    2. 使用npm link (docs) 创建从项目到位于本地存储上的组件包的链接。这可行,但设置起来有点棘手。这样做的好处是,如果您重新构建组件,所有带有该组件链接的项目都会立即看到这些更改。

    3. 使用npm install 从您的(私有)Github 或其他存储库安装。这与普通的npm install 类似,并且比npm link 更易于使用。缺点是对组件的任何更改都需要推送到远程存储库,然后需要更新使用该组件的项目。

    【讨论】:

    • 运行npm link 怎么样?它会创建一个 tgz 文件,如果我 npm install that.tgz 我将在 node_modules 中获取我的包。
    • 我也遇到了导入包中获取es6和jsx代码的问题。在执行任何这些选项之前,我应该让 webpack 将组件转换为 es5 吗?
    • babel 或 webpack 与 targetModule: umd
    • 我找到了 lib github.com/OrKoN/npm-link-shared,它使用 npm 链接将一组本地节点模块安装到目标文件夹中
    猜你喜欢
    • 2015-08-25
    • 1970-01-01
    • 2018-12-31
    • 1970-01-01
    • 2020-09-23
    • 2020-11-08
    • 2019-01-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多