开发相互依赖的npm包的最佳工作流程

时间:2016-08-08 08:15:21

标签: javascript git reactjs npm package.json

目前我们正在开发两个基于React的应用程序,比如app-aapp-b,它们有两个我们也管理的依赖项。一个shared-components包,其中包含共享组件,以及shared-utilities包,其中包含app-aapp-b之间的共享实用程序。这两个都在package.json上有自己的完整,并且包含在app-aapp-b的package.json中。

依赖关系:

app-a
|- shared-components
|- shared-utilities

app-b
|- shared-components
|- shared-utilities

每当我们开发某些内容时,例如shared-components我们要在app-a中使用,我们就必须执行太多步骤:

  1. <AwesomeComponent />
  2. 中设置shared-components
  3. shared-components
  4. 中构建文件
  5. 提交/推送到GitHub。
  6. 将package.json中的点依赖关系从app-a转移到特定分支。
  7. 运行npm install
  8. 使用<AwesomeComponent />
  9. 如果我们在开发时犯了错误,我们需要从第1步开始。当然,我们可以通过直接将构建文件复制到npm install文件夹来跳过提交/推送和node_modules,但是不过,每当我们构建一个组件时,这都是一个麻烦。

    你们使用什么工作流程或任何提示/建议来加速本地发展?

    注;我们正在使用webpack捆绑我们的文件和babel来进行转换。

1 个答案:

答案 0 :(得分:2)

您想要的可能是npm link

只需在shared-components中设置sudo npm link。这会在全局npm目录中创建符号链接(因此,如果以root用户身份安装它,则需要提升权限)。

接下来,您需要做的就是进入app-a并运行npm link shared-components,这将使用符号链接替换node_modules中的文件夹。