【nvm切换node版本,发现npm无法使用】

使用 Vite 构建工具,对node的版本有一定的要求,于是使用了nvm切换指定node版本后,发现npm命令无法使用。

如下所示:

按照上图错误描述,去nvm的安装路径下(通常为c:\users<your user>\AppData\Roaming\nvm)对应的node版本下找npm文件,发现node_modules文件夹为空。


一、问题原因

通过搜索发现有许多人切换node版本都存在着同样的问题。

基本意思就是说npm的仓库已经从GitHub - npm/npm: This repository is moving to: https://github.com/npm/cli移到GitHub - npm/cli: the package manager for JavaScript了,但NVM v1.1.7并没有做相应的调整,所以通过 nvm install 安装 Node.js 时对应的npm实际上并没有安装成功,不过NVM此时并没有报告任何错误,而是仍然显示已安装成功。


二、解决步骤

从Node.js官网下载对应版本的压缩包,将其中node_modules目录下的内容,拷贝到NVM目录下对应Node.js安装目录中的node_modules中。如果NVM目录下有多个Node.js版本,则需要手动拷贝每个Node.js版本中node_modules目录的内容。

1.node版本对应npm版本查询

以往的版本 | Node.jsNode.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.https://nodejs.org/zh-cn/download/releases/

2.下载对应版本的npm

https://nodejs.org/download/release/切换的node版本号/

例如:

Index of /download/release/v20.2.0/icon-default.png?t=N4P3https://nodejs.org/download/release/v20.2.0/

下载成功后解压文件,把解压后的 node_modules/npm 拷贝到 nvm 目录下对应的node版本node_module目录中,输入 npm -v 检验。


总结


以上就是今天的记录啦,希望能对大家有所帮助~

  • 12
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
切换版本没有自动下载npm,怎么解决? 回答: 当使用nvm切换node版本后,如果npm没有自动下载,可以按照以下步骤解决。首先,使用nvm ls命令列出已安装的node版本,确保你想要使用版本已经安装。然后,使用nvm use \[node版本号\]命令切换到指定版本node。接下来,在终端中输入npm config set prefix "\[node_global文件夹路径\]",其中\[node_global文件夹路径\]是你的node_global文件夹的路径。最后,输入npm config set cache "\[缓存路径\]",其中\[缓存路径\]是你的缓存路径。这样设置后,切换版本就会自动下载npm了。\[1\]\[3\] #### 引用[.reference_title] - *1* [nvm切换node版本,以及后续npm报错](https://blog.csdn.net/touzhu11/article/details/126847877)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [【nvm切换node版本发现npm无法使用】](https://blog.csdn.net/weixin_45183187/article/details/129279203)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [解决nvm切换node版本npm全局安装(npm i -g)的包无法使用](https://blog.csdn.net/qq_43176127/article/details/127494173)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值