切换 node 版本的工具——nvm

需求

公司老项目需要用 node0.1 版本来维护,进行中的项目用 v8,但我又想尝试最新的 v10,我在想有没有切户 node 版本的工作呢?

解决

问了身边的人都是用新不用旧的,我在 google 上找了很多解决方法,用 python 或者用 C++写的一些软件来弄的,其中最流行的是一个 nvm 的包,原作者只用 shell 只写了一个 mac 版本,开源社区用 Go 弄了个 windows 版本实现方法不一样,但是不影响使用。

使用

我本人用的是 windows 版本,下面只说 windows 的使用方法(与 mac 版本大同小异)

注意

在安装 nvm for windows 之前,你需要卸载任何现有版本的 node.js。并且需要删除现有的 nodejs 安装目录(例如:"C:\Program Files\nodejs’)。因为,nvm 生成的 symlink(符号链接/超链接)不会覆盖现有的(甚至是空的)安装目录。 你还需要删除现有的 npm 安装位置(例如“C:\Users\weiqinl\AppData\Roaming\npm”),以便正确使用 nvm 安装位置。

  1. 下载 nvm-windows
  2. 重新打开命令行工具
  3. nvm install 10.13.0 下载 10.13.0 版本的 node
  4. nvm use 10.13.0 使用 10.13.0 版本的 node
  5. node -v 如果 node 版本显示 10.13.0 就表示可以使用了
  6. 你还可以nvm install其他版本用nvm ls查看当前下载了哪些版本
nvm ls	#查看已下载的版本列表
nvm use  <versionNumber> #使用版本
nvm install <versionNumber> #下载
nvm uninstall <versionNumber> #删除
nvm node_mirror <node_mirror_url>:#设置节点镜像,可以使用https://npm.taobao.org/mirrors/node/
nvm list [available] #列出node.js安装。available在末尾键入以显示可供下载的版本列表。
nvm on #启用node.js版本管理。
nvm off #禁用node.js版本管理(不卸载任何内容)。

TIP

  1. 建议保留 3 个版本,node 的兼容跨度不会大于 3 个版本
  2. 不同版本中下载的全局插件都不会共享,也就是说npm i vue -g全局下载了vue只要使用nvm use 10.13.0换个版本 ,在这个版本的全局环境中没有安装vue的话则需要重新下载,可以使用npm root -g查看全局环境的安装目录。
  3. 如果需要查看项目兼容什么版本则建议用自动化测试工具,nvm 只适合在开发中使用。
  4. 防毒软件报毒的相关解决方法