使用 npm 卸载依赖包
npm 使卸载包变得容易 。 跑步 npm uninstall <package>
卸载给定的包。 例如,当你运行 npm uninstall mongoose
从 Mastering JS GitHub repo 中, npm 打印出以下输出:
$ npm uninstall mongoose
removed 22 packages and audited 1204 packages in 3.311s
found 0 vulnerabilities
运行后 npm uninstall mongoose
, 这 node_modules
目录不再包含 Mongoose,并且正在调用 require('mongoose')
将失败。
$ ls -l node_modules/ | grep "mongoose$"
$
$ node -e "require('mongoose')"
internal/modules/cjs/loader.js:800
throw err;
^
Error: Cannot find module 'mongoose'
npm uninstall 有什么作用?
npm uninstall
做的不仅仅是 rm -rf ./node_modules/mongoose
. 虽然删除了 node_modules/mongoose
目录有效,它将 Mongoose 的依赖项留在 node_modules
.
请注意,输出 npm uninstall
说它删除了 22 个包:
$ npm uninstall mongoose
removed 22 packages and audited 1204 packages in 3.311s
found 0 vulnerabilities
这些是 Mongoose 依赖的包,但没有其他包依赖,因此可以安全地删除它们。
这 --no-save
旗帜
npm uninstall
也从你的 package.json
, 表示后续 npm install
不会安装那个包。 当您想要从 JavaScript 项目中永久删除包时,这是一种便利,可以为您节省额外的步骤。
但是,在某些情况下,您可能希望在不修改的情况下卸载软件包 package.json
. 例如,您可能想要测试即使缺少某个包,您的应用程序是否仍能正常工作。 在这种情况下,您可以使用 npm uninstall --no-save
:
$ npm uninstall mongoose --no-save
removed 22 packages and audited 1204 packages in 3.311s
found 0 vulnerabilities
$ cat package.json | grep "mongoose"
"mongoose": "5.x",
"mongoose-beautiful-unique-validation": "7.x",
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: 使用 npm 更新
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论