使用 nvm 管理 node 版本

最近频繁地被 node 版本伤脑筋…

  • 起因是 slidev,这个库看起来很好玩,事实上确实挺好玩的,但是需要 node 版本>=14
  • 在学习 node.js 的时候,我想安装最新的 v16 版本
  • 需要用 node-mirai 开发 qq 机器人的 canvas 功能的时候,安装 node-canvas 疯狂报错,最后去 issue 里找到了一种降低 node 版本的解决办法…

好烦啊

于是开始寻找管理 node 版本的东西

n 和 nvm

最常用的两个工具,很遗憾,不支持 windows 系统
nvm 好像是支持的,在 gitbash 的环境下可以使用

1
2
3
4
5
6
7
Note: nvm also support Windows in some cases. It should work through WSL (Windows Subsystem for Linux) depending on the version of WSL. It should also work with GitBash (MSYS) or Cygwin. Otherwise, for Windows, afew alternatives exist, which are neither supported nor developed by us:

重点翻译: 对于 Windows,存在一些替代方案,我们既不支持也不开发这些替代方案

nvm-windows
nodist
nvs

但是总感觉会出现莫名其妙的问题…

n
nvm

最后选择了 nvm-windows

nvm-windows
releases

下载nvm-setup.zip
无脑安装,一路下一步
如果遇到弹窗,可能是说检测到了已经有安装了 node,是否让 nvm 接管已经安装的 node 版本
选是

nvm 的使用

安装一个版本(如 10.16.3)
如果要选择 32 位 在末尾加上 32

1
2
3
nvm install 10.16.3
---
nvm install 10.16.3 32

切换到一个版本(如 10.16.3)

1
nvm use 10.16.3

卸载一个版本

1
nvm uninstall 10.16.3

查看已安装所有版本

1
nvm list

显示 node 在什么环境下运行的(32 or 64)

1
nvm arch

开启 node 版本管理

1
nvm on

关闭 node 版本管理

1
nvm off

设置 nvm 存放不同 node 的目录
如果 path 未设置,则显示当前目录

1
nvm root <path>

设置 node 镜像地址
https://npm.taobao.org/mirrors/node/

1
nvm node_mirror <node_mirror_url>

设置 npm 镜像地址
https://npm.taobao.org/mirrors/npm/

1
nvm npm_mirror <npm_mirror_url>

可能有其他问题

杀毒软件报毒:

卸载掉杀毒软件