node.js - 通过 nvm 安装 Nodejs 时 npm list -g 无法工作
问题描述
最近我通过nvm重新安装了Nodejs和npm。除了npm list -g
命令之外,所有事情都运行良好。当我使用该命令时,它显示的全局包只是 npm 本身:
但实际上,我已经安装了其他许多全局包。我可以在文件夹中找到它们:
另外,让我感到困惑的另一件事是有 2 个 Nodejs 文件夹。一种是:
另一个是:
有什么问题吗?如何使用npm list -g
命令找到全局包?
解决方案
当你使用 npm 安装一个全局包时,它预装了 Node 的版本,比如说 12,当你使用 nvm 将 Node 安装升级到新版本或者你告诉 nvm 切换到使用不同的 Node 版本时,全局包当您使用 Node 12 时安装的将不可调用,因为此全局包位于特定于 Node 12 的文件夹中,Node 13 或 Node 10 无权访问该全局包,因此当您手动切换到不同的 Node 版本或通过 nvm,您必须再次安装该全局包。通过 npm 安装的每个 Node 版本都驻留在它们自己的文件夹中,并且无论何时执行此操作npm i -g package
,此全局包都将下载到特定于当前使用的 Node 版本的文件夹中
推荐阅读
- javascript - 如何使用 ajax 请求刷新地图?
- javascript - 无法将输入字段中的裁剪图像设置为文件
- ibm-mobilefirst - 使用 UserAuthenticationSecurityCheck 时,IBM MFP 8.0 多个用户 ID 粘在 1 个设备上
- algorithm - 在幺半群的帮助下将二次时间程序变成线性时间程序?
- spring - 在应用程序启动之前运行自定义代码的不同方法
- material-ui - 素材ui头像显示本地图片坏了
- gcc - -bash:gcc-8.0.2:找不到命令(但它在那里)
- php - 如何从yii2中的rest api注销
- php - 如何显示结束日期 31-03- 年(取决于 start_date)?
- javascript - 创建要添加的函数,使得 add(1,2)(3,...k)(1,2,3)...(n) 应该对所有数字求和