假设我安装项目包npm install
,查看package.json
要安装的模块.过了一会儿,我发现我不需要一些特定的模块并从中删除它的依赖性package.json
.然后我删除了一些其他模块,package.json
因为它们不再需要,而其他模块则替换为替代模块.
现在我想清理node_modules
文件夹,以便只有那些列出的模块package.json
留在那里,其余的必须去,就像这样npm clean
.我知道我可以手动删除它们但是希望有一些很好的准备使用糖功能.
我想你在找 npm prune
npm prune [<name> [<name ...]]
此命令删除"无关"包.如果提供了包名称,则仅删除与提供的名称之一匹配的包.
无关的包是父包的依赖项列表中未列出的包.
请参阅文档:https://docs.npmjs.com/cli/prune
首先全球安装rimraf
npm install rimraf -g
使用cmd在path_modules文件夹中转到路径,并在下面的命令中应用
rimraf node_modules
简单的运行
rm -r node_modules
事实上,您可以删除任何文件夹.
比如rm -r AnyFolderWhichIsNotDeletableFromShiftDeleteOrDelete.
只需打开gitbash移动到文件夹的根目录并运行此命令
希望这会有所帮助.
从6.5.0版本开始npm支持命令clean-install
来强制刷新所有软件包
您可以删除node_modules /文件夹,然后从package.json重新安装依赖项.
rm -rf node_modules/ npm install
这将擦除当前文件夹中的所有已安装的包,并仅从package.json安装依赖项.如果先前已安装依赖项,则npm将尝试使用缓存版本,从而避免第二次下载依赖项.
由于其文件夹嵌套,Windows无法删除该文件夹,因为其名称太长.要解决此问题,请安装RimRaf:
npm install rimraf -g rimraf node_modules
你试过npm prune吗?
它应该卸载包文件中未列出的所有内容
https://npmjs.org/doc/cli/npm-prune.html