【发布时间】:2023-09-02 02:46:01
【问题描述】:
我正在使用 webpack 为应用程序构建生产包,lodash,虽然我没有明确安装它并且它不存在于我的 package.json 中,但正在插入到我的 node_modules 文件夹中。
当我运行npm uninstall --save-dev lodash(有效地从node_modules 中删除lodash 文件夹)并重新运行构建过程时,我的包显着缩小。我想确定哪个包包含并需要完整的 lodash 库。
如何确定我的许多 npm 包中的哪些需要 lodash?
注意:
我正在使用包lodash.debounce 和lodash.throttle。但是lodash.throttle 只有lodash.debounce 的依赖,而lodash.debounce 没有任何其他的lodash 依赖。
【问题讨论】:
-
但是你的 npm 包可能需要 lodash 是有原因的。
-
大概,但如果它对我的生产包有如此大的贡献,我可能会考虑删除需要它的包。这就是为什么我想知道哪些软件包需要它。
-
好吧,你说你正在使用
debounce和throttle。如果你完全删除了 lodash,你的脚本就不再工作了,是吗? -
这两个包没有其他依赖项(根据它们自己的 package.json 文件),并且我的应用程序在卸载 lodash 后可以正常运行。
-
npm ls lodash应该在整个依赖树中显示lodash的所有实例。
标签: javascript node.js npm webpack