--- nodejs多个版本快速切换,无需卸载重装(node.js前端开发必备)。 --- # 简介 作为全栈开发人员会管理多个项目,而现在流行的基本都是基于nodejs的vue前端项目,但是每个前端项目使用的node版本却又不尽相同,为了不再卸载重装node.js环境,特意写了windows下的bat批处理脚本,用来快速切换node版本,从此就能够快乐的切换项目了。 **先来看下效果:** ![bat执行效果.png](http://www.codingyun.com/cloud/articles/20221118/54752186fdb5375f0214666172114f99.png)
图一:nodejs.bat执行效果
# 一、安装多个zip版本(非exe安装) ## 1. 在nodejs官网下载需要的版本[链接](https://nodejs.org/dist/)(https://nodejs.org/dist/),注意要下载压缩包(zip或7z) LTS版本是长期支持版本较稳定,目前最新的LTS是node-v18.12.1-win-x64.zip,但是使用中发现部分项目不支持node-v18,可以依情况而定。 ![nodejs官网下载页面.png](http://www.codingyun.com/cloud/articles/20221118/944fe089dba2ca61ac3d59e16d42c5d9.png)
图1-1:nodejs官网下载页面
比如我的前端项目需要下载以下两个版本: - node-v11.15.0-win-x64.zip - node-v16.18.1-win-x64.zip ![nodejs官网下载页面2.png](http://www.codingyun.com/cloud/articles/20221118/887f7e6f8166db39bf2b1c87592421f9.png)
图1-2:nodejs官网下载页面2
**注意:下载zip格式的安装包** ## 2. 在c盘新建文件夹(C:\nodejs),复制两个zip压缩包到该文件夹下 ## 3. 解压下载好的nodejs压缩包 C:\nodejs\node-v11.15.0-win-x64 C:\nodejs\node-v16.18.1-win-x64 每个版本目录下新建两个文件夹,如下: node-v11.15.0: C:\nodejs\node-v11.15.0-win-x64\node_global:npm全局安装位置 C:\nodejs\node-v11.15.0-win-x64\node_cache:npm缓存路径 node-v16.18.1: C:\nodejs\node-v16.18.1-win-x64\node_global:npm全局安装位置 C:\nodejs\node-v16.18.1-win-x64\node_cache:npm缓存路径 ## 4. 在系统环境变量中新建环境变量NODE_HOME,并将NODE_HOME添加到path中 |变量|值|描述| |-|-|-| |NODE_HOME|C:\nodejs\node-v16.18.1-win-x64|NodeJs常用的版本路径(C:\nodejs\node-v16.18.1-win-x64),先配置一个默认的,脚本切换时会改变环境变量的值| |Path|%NODE_HOME%;%NODE_HOME%\node_global;|可执行文件路径集(暴露可执行命令)(%NODE_HOME%)| |NODE_SKIP_PLATFORM_CHECK|1|由于win7不能安装node.js v12以上的版本,这里要设置忽略版本检查(1),win7以上操作系统可以忽略该变量不用配置| # 二、切换nodejs版本 ## 1. 在C:\nodejs下新建两个bat文件 放在哪个目录都可以,不影响使用,我就放在了git文档里,这样方便利用git实现多pc终端共享文件,提高工作效率 - node16.bat - node11.bat ![git文档下的bat脚本.png](http://www.codingyun.com/cloud/articles/20221118/2b5f152f2d409f05dff48adf27b70b27.png)
图1-2:git文档下的bat脚本
## 2. 脚本内容 node11.bat ```bash @echo on rem 下面的个别注释会用 :: 代替rem rem 配置nodejs永久环境变量 rem 永久设置环境变量 setx xxx xxx rem 默认是用户变量,/M 为系统变量 setx /M NODE_HOME "C:\nodejs\node-v11.15.0-win-x64" echo 查看版本,新配置的环境变量,下一次cmd才会生效,所以这里显示的仍然是上一次的配置信息 call node -v call npm -v ::sleep 5 sec choice /T 5 /C ync /CS /D y /n echo 通过如下命令配置npm全局安装位置 call npm config set prefix "C:\nodejs\node-v11.15.0-win-x64\node_global" ::sleep 5 sec choice /T 5 /C ync /CS /D y /n echo 通过如下命令配置缓存路径位置 call npm config set cache "C:\nodejs\node-v11.15.0-win-x64\node_cache" ::sleep 5 sec choice /T 5 /C ync /CS /D y /n echo 设置远程仓库为国内淘宝源,并验证 call npm config set registry http://registry.npm.taobao.org/ echo 查询源验证 call npm get registry pause; ``` node16.bat ```bash @echo on rem 下面的个别注释会用 :: 代替rem rem 配置nodejs永久环境变量 rem 永久设置环境变量 setx xxx xxx rem 默认是用户变量,/M 为系统变量 setx /M NODE_HOME "C:\nodejs\node-v16.18.1-win-x64" echo 查看版本,新配置的环境变量,下一次cmd才会生效,所以这里显示的仍然是上一次的配置信息 call node -v call npm -v ::sleep 5 sec choice /T 5 /C ync /CS /D y /n echo 通过如下命令配置npm全局安装位置 call npm config set prefix "C:\nodejs\node-v16.18.1-win-x64\node_global" ::sleep 5 sec choice /T 5 /C ync /CS /D y /n echo 通过如下命令配置缓存路径位置 call npm config set cache "C:\nodejs\node-v16.18.1-win-x64\node_cache" ::sleep 5 sec choice /T 5 /C ync /CS /D y /n echo 设置远程仓库为国内淘宝源,并验证 call npm config set registry http://registry.npm.taobao.org/ echo 查询源验证 call npm get registry pause; ``` ## 3. 右键(切记以管理员身份运行)执行bat脚本 重新打开一个cmd窗口查看版本,旧的窗口有缓存 ```bash node -v npm -v ```
打赏
  • 微信
  • 支付宝

评论
来发评论吧~