Answers:
如果要执行相反的操作(即,将模块从dependencies
移至devDependencies
),请执行以下操作:
npm install <module_name> --save-dev
或速记:
npm i <module_name> -D
从devDependencies
转到dependencies
(prod)的简写:
npm i <module_name> -P
npm i module-example -D
也将工作,从生产过渡到开发,以及npm i module-example -P
从开发依赖转为生产依赖
yarn remove <module_name>
,然后使用yarn add <module_name> --dev
在纱线中:
将模块从devDependencies
移至dependencies
:
yarn remove <module_name> --dev && yarn add <module_name>
将模块从dependencies
移至devDependencies
:
yarn remove <module_name> && yarn add <module_name> --dev
如注释中所述,该命令实际上删除了该模块,然后将其重新安装在新位置。
dependencies
到devDependencies
?
&&
与&
。
使用npm
或yarn
命令的问题是,重新添加的版本可能与当前使用的版本不同。如果这是您想要的- 既是升级又是升级-然后继续并使用公认的答案。
如果没有,只需手动编辑package.json
将线从devDependencies
对象移动到dependencies
对象(必要时创建)。您也可以朝另一个方向前进。
锁定文件不包含有关事物是prod还是dev依赖项的任何信息,因此不需要更新。之后,您可以执行npm
/ yarn install
修复锁定文件中的所有标志。
dependencies
顶级部分package-lock.json
,但每个条目都可能带有一个dev
标志,以指示它是dev依赖还是传递依赖。请参阅docs.npmjs.com/files/package-lock.json#dev “如果[dev为] true,则此依赖关系仅是顶层模块的开发依赖关系,或者是一个传递性依赖关系。对于那些既是顶层的开发依赖关系,又是顶层的非开发依赖关系的传递依赖。”
使用npm install的问题是您最终获得了更新版本。对我有用的是:
npm install
这样可以保持所有版本的完整性。