填坑日记:解决nvm切换node版本失败的问题(针对windows)

背景

刚入职新公司,用的windows电脑,之前一直用Mac突然有点不适应,刚入职就修改一个老项目,需要低版本的node环境,于是就选取nvm作为node版本管理工具,但是很快发现了一个巨坑:使用 nvm use 切换版本号的时候,显示版本切换成功了,但是再用 node -v显示还是之前的版本。让我帮助大家探究一下是什么原因吧。。。

分析问题

明明使用nvm切换了node版本,nvm也提示了我们版本切换成功了,但是执行node的命令依然切换之前的版本。猜猜原因可能是:nvm切换的node与我们执行环境的node没有产生联系。 带着这样的猜猜往下继续分析: 首先我们来看一下我们下载的nvm包

我们可以看到我用2个框框起来的区域,一个是nodejs,另外一个是我们用nvm install version安装的不同node版本的包。 nvm里面的nodejs其实就是我们在切换node版本时候选中的当前node版本,例如:我们使用nvm use 16.16.0

我们可以看得到切换的node版本跟nvm文件下的nodejs版本是一致的,也就是nvm切换版本成功了,但是为什么会遇到运行node -v还是之前的版本,原因就是运行的node环境跟nvm切换的环境不是同一个,可能是你运行的node.exe是在C:\Program Files\nodejs里面,所以不管你怎么使用nvm切换,node的版本都是不变的,依旧是运行C:\Program Files\nodejs里面的node.exe

解决问题

我们知道nvm切换的node环境和我们运行的node不是同一个执行文件,所以导致了nvm切换node版本失败。我们解决这个问题只需要让我们node的运行环境指向nvm切换的node执行文件就可以了,通过配置环境变量改变node的执行文件目录

这样就解决了nvm切换node版本失败的问题了

相关推荐
程序员爱钓鱼12 小时前
Node.js 编程实战:Node.js + React Vue Angular 前后端协作实践
前端·后端·node.js
程序员爱钓鱼12 小时前
Node.js 编程实战:前后端结合的 SSR 服务端渲染
前端·后端·node.js
Dr_哈哈13 小时前
ESM vs CJS 模块化差异对比
javascript·node.js
鹿衔`15 小时前
PySpark 提交模式对比与实践推荐
前端·npm·node.js
唐叔在学习19 小时前
这年头谁还不懂前端async&await?正是在下
前端·javascript·node.js
Rysxt_19 小时前
npm与Node.js关系详解及使用教程
前端·npm·node.js
好奇的菜鸟19 小时前
前端开发必备:npm配置国内镜像
前端·npm·node.js
寒水馨19 小时前
Windows 11 安装使用 nvm,Node.js、npm多版本管理、切换
npm·node.js·windows 11·前端开发·nvm·nvm-windows·多版本管理
9.1552619 小时前
HBuilder X 掌上商城分类页面模板下载“npm install better-scroll”报错解决办法
前端·npm·node.js
普通网友19 小时前
npm发布报错急救手册:快速解决2FA与令牌问题
前端·javascript·学习·面试·npm·node.js