利用nvm进行不同node版本间切换的步骤
前段时间, 项目框架升级(vue3.0), 并且node的版本也升级到18.12.1, 但是还要维护之前vue2.0的老项目, 然后跑依赖的时候发现报错Error:Cannot find module 'node-sass'
, 后才查阅之后发现问题是本次的node版本过高, 与项目的node-sass
不兼容.
分析过后, 解决方案大致有三种
- 降低node版本, 但是多个项目来回切换时成本又很高(需要卸载重装)
- 升级老项目, 相比较第一种方法, 这个改动更大
- 利用工具切换不同版本的node
综合考虑, 使用第3种方案
node版本:https://nodejs.org/dist/
我安装的是 v14.17.5 和 v18.12.1, 可以根据自己的需求选择
操作流程
-
先把本地的node卸载
-
下载nvm安装包
nvm-setup.zip
地址: https://github.com/coreybutler/nvm-windows/releases -
按照步骤安装nvm, 需要注意的是, 会让选择两次安装目录,
第一次是nvm的安装目录, 第二次是node.js的安装目录
, 安装成功即可 -
终端输入
nvm-v
, 出现对应的版本号即安装成功 -
nvm安装过后, 进行node的安装, 有两种方式
1). 命令安装: 使用nvm命令nvm install [version]
2). 离线下载, 在node.js官网下载对应的安装包, 需要注意的是, 要提前创建两个版本的文件夹来放置node.js, 需要先安装低版本的node, 再安装高版本的node, 否则有可能导致低版本的安装失败
a. 需要注意的是, 遇到了一个问题, 我安装了低版本的之后去安装高版本的, 发现系统会自动把低版本的卸载掉, 所以, 安装完低版本的之后
应该先把低版本的文件夹重命名, 我这里改为了 v14.17.5aa, 然后安装完高版本的在改回来
, 这样就不会被卸载了
-
验证一下是否安装成功, 我们可以在终端输入
node -v
, 如果显示了版本号就说明安装成功了 -
安装成功之后, 我们需要配置一下环境变量, 具体步骤如下:
此电脑
=> 右键 =>属性
=>高级系统设置
=> 高级 =>环境变量
新建两个系统变量
然后在系统变量里找到Path变量
, 编辑, 然后将上面两个变量添加进来
-
然后我们可以通过命令
nvm list
来查看我们已经安装的node版本
通过命令nvm use [version]
来动态切换node的版本
🎉🎉
这样的话在切换不同项目的时候就可以很方便的切换node版本了😄
欢迎大家一起讨论学习😊~