使用nvm解决nodejs多版本问题,难道不香吗?

引言

生活从不亏待每一个努力向上的人,未来的幸运都是过往努力的积攒。
趁阳光正好,做你想做的事;趁你年轻,去追逐梦想!

起因

有天,在运行一个vue项目的时候,不知道用的nodejs版本是多少,直接使用我电脑的14版本的运行。当我使用 npm install运行的时候,报错了,具体错误不知道。大概意思就是说,我电脑环境的nodejs版本和项目需要用的nodejs版本不一致导致的,需要使用22版本的。

随后,我下载了22版本的nodejs进行安装,配置环境变量,运行项目,执行npm install,运行成功。

但是,发现了一个问题,这个项目是用22版本的,但是还有其他项目是用低版本的,这个怎么办呢?这个时候,我发现了一个好东西 nvm 。它的作用是啥呢?nvm 是nodejs的版本管理工具,可以解决nodejs各版本之间不兼容现象,可通过它安装和切换不同版本的nodejs。 是不是感觉很哇塞呢?

看到这块,就可解决我的问题,接下来就是我们下载安装调试的过程了。

开始实战

检查

主要针对于之前安装过nodejs,需要进行以下操作:

1.卸载nodejs,可通过控制面板进行删除

2.删除环境变量,删除环境变量中系统和用户中path的nodejs路径。

下载安装

1.打开下载界面,选择对应nvm安装包。

2.这里为了避免出现问题,选择使用1.1.12版本进行下载安装。安装的时候可根据自身情况,设置nvm和nodejs安装路径。

3.安装之后,使用命令nvm -v,进行是否安装成功。

4.设置国内阿里云镜像,加速npm依赖包。

打开nvm安装目录的setting.txt,复制以下,保存关闭。

ruby 复制代码
nvm npm_mirror https://npmmirror.com/mirrors/npm/  
nvm node_mirror https://npmmirror.com/mirrors/node/

5.查看nodejs版本,nvm list available

可访问node官方,查看我们所需要的版本,记住版本号,可接下来使用。

下载多个版本

1.使用命令 nvm install 版本号,进行下载安装。这里选用22.14.0和14.20.0。

安装22.14.0

安装14.20.0

2.进行版本使用,使用命令 nvm use 版本号

nvm use 22.14.0

nvm use 14.20.0

3.查看当前node版本和npm版本

复制代码
node -v 
npm-v

4.使用cmd可修改node默认的全局模块安装global路径和cache路径。

swift 复制代码
npm config set prefix "D:\service\NodeJs\node_global" 
npm config set cache "D:\service\NodeJs\node_cache"

注意

1.记得在cmd下载node并设置好之后,需要重启一下编辑器,要不然有可能会出现以下错误:

arduino 复制代码
# npm : 无法将"npm"项识别为 cmdlet、函数、脚本文件或可运行程序的名称。

总结

至此,nvm实现nodejs多版本功能已经实现,有需要的可以前去尝试了!

nvm官网地址

nvm.uihtm.com/

展望

多一点快乐,少一点烦恼。每天开心笑,累了就睡觉,醒了就微笑,生活就是这么简单。
没有白费的努力,也没有碰巧的成功。只要认真对待生活,终有一天,你的每一份努力都将绚烂成花。

相关推荐
满分观察网友z5 分钟前
别小看这个滑动条!从性能灾难到用户挚爱的 uni-app Slider 踩坑实录
前端
满分观察网友z8 分钟前
别再裸写<textarea>了!一个“小”功能,我用上了它几乎所有API
前端
西西木科技丨Shopify开发机构14 分钟前
如何在 Shopify 中建立重定向
前端·html
汪子熙20 分钟前
深入探析 header facets:定位与应用
前端·javascript
你听得到1121 分钟前
从需求到封装:手把手带你打造一个高复用、可定制的Flutter日期选择器
前端·flutter
前端双越老师25 分钟前
30 行代码 langChain.js 开发你的第一个 Agent
人工智能·node.js·agent
江城开朗的豌豆25 分钟前
Vue Router vs location.href:导航跳转的正确姿势,你选对了吗?
前端·javascript·vue.js
小磊哥er30 分钟前
【前端工程化】如何制定前端项目中的页面模版?
前端
Liudef0633 分钟前
基于HTML与Java的简易在线会议系统实现
java·前端·html
2401_8812444036 分钟前
javaweb———html
前端·javascript·html