将库从依赖项重定位到 package.json 中的 devDependencies 块的命令?

Posted

技术标签:

【中文标题】将库从依赖项重定位到 package.json 中的 devDependencies 块的命令?【英文标题】:command which relocate a library from dependencies to devDependencies block in package.json? 【发布时间】:2018-04-23 12:24:10 【问题描述】:

使用 yarn,我添加了一些额外的库(比如说 jquery)

yarn add jquery

这将默认添加到 package.json 中的 dependencies 块中

但我想将其位置从 dependencies 更改为 devDependencies 块。

我现在做的是

删除库

yarn remove jquery

然后用 -D 再次添加

yarn add jquery -D

所以我正在寻找 yarnnpm 中的任何命令,它直接将库位置从 dependencies 更改为 devDependencies 块,而无需卸载并重新安装相同的块。

【问题讨论】:

在 npm 上下文中给出的这个解决方案不起作用:***.com/questions/46903002/… 【参考方案1】:

使用 npm 或 yarn 命令的问题在于,重新添加的版本可能与当前使用的版本不同。如果这是您想要的 - 移动和升级 - 然后继续使用the accepted answer in this question。

如果没有,只需手动编辑您的 package.json 以将行从 devDependencies 对象移动到依赖项对象(如果需要,创建它)。你也可以去另一个方向。

锁定文件不包含任何关于事物是 prod 还是 dev 依赖项的信息,因此不需要更新。

因为你专门要求一个命令:

从命令行文本编辑器中选择您最喜欢的组合:sedawkgrepperl 甚至是 python。或者您可以使用 JSON 编辑器,例如 jq

不过你是对的 - 应该有一个本机命令,也许我们需要向 npm/yarn 发出拉取请求。

【讨论】:

以上是关于将库从依赖项重定位到 package.json 中的 devDependencies 块的命令?的主要内容,如果未能解决你的问题,请参考以下文章

如何将通过 npm 安装的所有依赖项保存到我的 package.json 文件中?

出现依赖错误时恢复到以前版本的 Package.json

如何读取外部定义到根 package.json 的依赖项?

如何将库依赖项添加到 Build.scala 的类路径?

为啥 package-lock.json 列出的依赖项与 package.json 不同?

Eclipse:将 git 存储库从项目重定位到工作区