首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >npm卸载从package.json中删除包,但不从node_modules文件夹中删除它

npm卸载从package.json中删除包,但不从node_modules文件夹中删除它
EN

Stack Overflow用户
提问于 2018-07-10 22:21:19
回答 3查看 7.2K关注 0票数 19

我试图通过以下方法删除一个包

代码语言:javascript
运行
复制
npm uninstall (package_name) -s 

它从package.json中删除了包,但没有从node_modules文件夹中删除它,所以我如何从node_modules文件夹中删除这些未使用的包?

编辑:

当我个人面对这个问题时,我分享这个问题,我使用了npm uninstall 的所有变体,但是它没有从node_modules中删除这个包,所以我分享了帮助我删除大约10个未使用的软件包的东西,即npm prune

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-07-10 22:21:19

根据国家预防机制指南,npm卸载仅从依赖项中删除包,它将不会从node_modules中删除包文件夹(说明中无论如何都没有提到)

出于某种原因,我认为npm卸载也会从node_modules中删除包文件夹,但它没有发生,经过一些研究,我发现我们应该使用

代码语言:javascript
运行
复制
npm prune

此命令将按照node_modules中的国家预防机制的正式说明自动删除未使用的包。

npm卸载只会从package.json文件中删除包,但不会从node_modules中删除包。

票数 22
EN

Stack Overflow用户

发布于 2021-06-14 09:36:39

我喜欢分享我在从我的项目中卸载一个软件包时所做的努力。我相信这可能会增加上述答案的价值。

我在我的一个项目中评估了一个名为react-router的包。后来我决定把它移除。我想先删除包,然后从代码中删除它的引用。我试过npm uninstallnpm prune。但是,在这两种情况下,它都未能从我的node-modules文件夹中删除包。我从代码中删除了react-router的引用,然后再试一次。我仍然不能用上面的命令删除它。经过一番研究,我发现我还安装了使用包react-router-domreact-router。所以我必须首先使用上面的命令删除它。只有那时,我才能删除react-router

我觉得奇怪的是,如果引用了包,npm uninstall就不会删除它们。我认为,如果允许的话,我不必通过在类中搜索包而不是IDE/Lint来手动查找包的用法,这样可以帮助我更容易地找到它。

票数 0
EN

Stack Overflow用户

发布于 2021-10-11 09:36:22

如果您同时尝试了npm prunenpm uninstall --save,但是node_modules中仍然存在这些模块,请尝试删除node_modules文件夹:

代码语言:javascript
运行
复制
rm -rf node_modules

然后跑

代码语言:javascript
运行
复制
npm install

要重新生成node_modules,只需使用所需的模块

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51274695

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档