将目录转换为npm包时如何管理依赖项?

时间:2018-07-03 13:17:17

标签: javascript reactjs npm node-modules package.json

一个项目写入反应,其目录可能为ui-components

现在我正在尝试将此目录转换为npm软件包。

最简单的部分是package.json告诉在哪里找到要导入的组件,写为"main": "./src/index.js"

它运行完美,并且可以从node_modules目录外部导入内容,因为ui-components/node_modules中未安装任何内容。

但是作为一个包,我正在尝试添加@storybook/react以及其他依赖项,其中一些是一致的,但是版本不同。

是否可以像现在一样轻松使用外部node_modules,还是可以简单地将ui-components/package.json中的版本与外部package.json进行同步?

  

我不会安装内部ui-components,但我想将它们一起编码并释放内部{

2 个答案:

答案 0 :(得分:0)

听起来您正在寻找peerDependencies

“”在某些情况下,您想表达软件包与主机工具或库的兼容性,而不必一定要对此主机进行要求。通常将其称为插件。值得注意的是,您的模块可能正在公开主机文档预期和指定的特定接口。”

{
  "name": "tea-latte",
  "version": "1.3.5",
  "peerDependencies": {
    "tea": "2.x"
  }
}

答案 1 :(得分:0)

事实证明,我正在寻找像lerna@microsoft/rush这样的软件包管理工具。

在我的情况下,这有点不同,我可能会编写一些构建脚本来处理这些程序包管理问题。