假设我用npm install来安装项目包。Json,用于安装模块。过了一段时间,我看到我不需要某些特定的模块,并从package.json中删除其依赖项。然后我从包中删除一些其他模块。Json,因为它们不再被需要,其他的被替代。

现在我想清理node_modules文件夹,以便只有模块在包中列出。Json保留在那里,其余的必须离开,类似于NPM清理。我知道我可以手动删除它们,但希望有一些很好的准备使用糖的功能。


当前回答

以防有人需要,这里是我最近做的一些事情来解决这个问题:

npm ci -如果你想清理所有东西,并从头开始安装所有包:

-清洁安装:如果node_modules文件夹存在,npm删除它并安装一个新的。

-它检查一致性:if package-lock。Json不存在或者它不匹配package的内容。Json, NPM停止与错误。

https://docs.npmjs.com/cli/v6/commands/npm-ci

npm-dedupe -如果你想清理当前的node_modules目录,而不删除和重新安装所有的包

搜索本地包树,并试图通过将依赖关系进一步向上移动来简化整体结构,在那里它们可以更有效地由多个依赖包共享。

https://docs.npmjs.com/cli/v6/commands/npm-dedupe

其他回答

你试过npm西梅吗?

它应该卸载包文件中没有列出的所有内容

https://npmjs.org/doc/cli/npm-prune.html

以防有人需要,这里是我最近做的一些事情来解决这个问题:

npm ci -如果你想清理所有东西,并从头开始安装所有包:

-清洁安装:如果node_modules文件夹存在,npm删除它并安装一个新的。

-它检查一致性:if package-lock。Json不存在或者它不匹配package的内容。Json, NPM停止与错误。

https://docs.npmjs.com/cli/v6/commands/npm-ci

npm-dedupe -如果你想清理当前的node_modules目录,而不删除和重新安装所有的包

搜索本地包树,并试图通过将依赖关系进一步向上移动来简化整体结构,在那里它们可以更有效地由多个依赖包共享。

https://docs.npmjs.com/cli/v6/commands/npm-dedupe

简单的运行

rm -r node_modules

事实上,你可以用它删除任何文件夹。

比如rm -r anyfolderwherhisnotdeletablefromshiftdeleteordelete。

只需打开github移动到文件夹的根目录并运行此命令

希望这能有所帮助。

由于其文件夹嵌套,Windows不能删除文件夹,因为其名称太长。要解决这个问题,安装RimRaf:

npm install rimraf -g

rimraf node_modules

使用以下命令代替npm install

npm ci