一、前言,为什么要用 nvm
node升到14.2 -npm升到6.14后 运行旧配置需求低版本npm项目时候 就会报错 node-sass 等等版本不支持的错误,类似:
Module build failed: Error: Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtim
Module build failed: Error: Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtim
但是高版本 vue-cli4 项目搭建又需要 使用新版本的npm 给予依赖支持,这个时候nvm -node 版本控制的好处就体现,
当运行旧现有的 低依赖版本项目 可以用nvm 换低版本node 8.9.0 -npm 5.5.1去运行,
需要高版本 则用 nvm 换高版本node14.2.0-npm6.14.5去运行。
还有Vue 报错 error:0308010C:digital envelope routines::unsupported
因为 node.js V17、18版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制。要改到node16,例如: node 16.12.0;node 16.17.0会出现 node下载下来了npm8.15.0没有下下来的情况,可以直接npm去下对应包 CNPM Binaries Mirror,或者换 node16.12.0;
二、准备工作与安装
1.先卸载本机安装的node环境
2.下载nvm
下载地址1 nvm-wondows
下载地址2 nvm文档手册 - nvm是一个nodejs的版本管理工具
nvm-setup.zip:安装版,推荐使用
3.安装nvm
非c盘(推荐) 位置 安装
→ set node.js symlink 注意 这是nvm控制node版本 放node的文件夹,
一般 可直接安装在 c:\Program Files\nodejs, 也可以 提前创建 nvm文件夹及 nodejs文件夹 然后在安装的时候直接安装在已有的nvm文件夹内,然后 设置set node.js symlink 时候就可以选择 F:\nvm\nodejs 自己想要的 nodejs快捷访问位置;
可在 nvm文件夹内 新建 nodejs文件夹
可在 nvm文件夹内 新建 npm 文件夹
4.配置环境变量
window+r键 打开 输入 sysdm.cpl
用户环境变量 系统变量 都设置:
可在 nvm文件夹内 新建 nodejs文件夹
可在 nvm文件夹内 新建 npm 文件夹
变量名:NPM_HOME 变量地址(nvm控制的npm版本文件夹):F:\nvm\npm (写自己的路径地址)
变量名:NVM_HOME 变量地址(nvm文件夹):F:\nvm (写自己的路径地址)
变量名:NVM_SYMLINK 变量地址(nvm控制的node版本文件夹):F:\nvm\nodejs(写自己的路径地址)
path 新增:
- %NPM_HOME%
- %NVM_HOME%
- %NVM_SYMLINK%
系统变量设置上同↑
设置完 查看环境变量是否成功
在 nvm use X.X.0 命令之前,保持 nodejs 是空文件夹,否则运行nvm use X.X.0 会因为nodejs文件夹内有文件而导致 nvm use X.X.0 运行并不成功,然后会发现运行 node -v node无法访问
保持nodejs文件夹无内容,然后 运行使用node版本命令: nvm use X.X.0 之后 ,当 nodejs 文件夹变成下图 快捷方式后,即 node -v 版本可访问了
5.nvm 控制node版本
常用命令:
nvm ls 查看已经安装的所有nodejs版本
nvm install 版本号,可安装指定版本的nodejs
nvm use 版本号,即可切换到指定版本
nvm uninstall 版本号,卸载指定版本
这里举例 安装node版本
nvm install 14.2.0
nvm install 8.9.0
安装node版本后
nvm use 14.2.0
node -v
npm -v
使用 版本 与 查看 当前node 与npm版本