繁体   English   中英

如何检查node_modules目录中是否有不必要的软件包?

[英]How do I check node_modules directory for unnecessary packages?

我的node_modules的程序包未在我的package.json的依赖项中列出,因此我猜测这些程序包是我的依赖项的依赖项。 我将如何检查呢? 我想确保在我的node_modules目录中没有任何不必要的软件包。

如果您的依赖关系列表重新安装的时间不会太长,那么一个简单的选择就是进行表翻转:完全删除node_modules目录,然后运行npm install来重新创建它。

如果你不想这样做,你可以尝试检查你的依赖的工具,如depcheck为@萨格尔-gopale在他们的回答暗示。

相关:运行npm -v来确定您正在运行npm v2还是v3。 就像@cartant在回答中说的那样,对于v3,您的node_modules目录将最大程度地保持平坦,这意味着以前显示为其他模块的子目录的内容(与npm v2一起安装时)现在将显示在node_modules本身的顶层。 这可能是您看到比预期更多的模块的原因。

如果您使用的是NPM 3,则可能会在node_modules目录中看到许多您不希望看到的node_modules ,因为NPM 3展平了依赖关系层次结构。

无论使用哪种版本,如果运行npm list命令,NPM都应突出显示不需要的任何无关模块。

由于软件包可能需要其他软件包,仅因为在package.json文件中不存在node_modules文件夹中的软件包,并不意味着您指定的软件包之一不需要它们。

如果在解决方案的根目录上运行npm prune命令,它将读取依赖关系树并删除真正不再需要的软件包。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM