npm/yarn 默认安装 devDependencies 吗?

Does npm/yarn install devDependencies by default?

我正在研究 React 组件的私有库。我已经设置了整个工作流程等。但我不确定一件事。

在我的库中,我有一些包被列为 peerDependencies,它们必须是对等的(例如 react,因为一次只能安装一个反应实例,否则一切都会中断) .但是如果我想在我的库中设置一些测试,我需要在那里安装 react 作为 devDependency.

所以我必须在库中安装 react as peerdev。当我将这个包发布到 npm register 时会发生什么? devDependencies 被排除在外?

谢谢!

如果您创建了一个节点包,并且您有一些开发依赖项,npm 不会将它们计入发布。这就是它被称为 devDependencies 的原因。它不在生产代码下。

我知道您在安装 npm 包时必须指定 --save-dev 以便将依赖项保存到您的 json 文件中。

如果您在生产中需要它,请将其添加到 peerDependencies。否则,将其保留在 devDependencies 中。当有人安装你的库时,不会安装开发依赖,应该已经安装了对等依赖。