node 的环境安装方式

这种两种方式都有自己的有点和缺点。

  • brew 方式安装,方便快捷,版本可以通过 brew upgrade来进行升级。但是使用的时候只能使用单一的版本。

  • nvm 方式安装,可以很方便的切换 node 的版本,如果线上版本是 v11,你自己的练习项目是 v12,那么就可以通过 nvm use 12.11.1来进行切换。

那么我们来介绍各种方式的安装方法。


nvm 方式

1. 安装

打开官网 https://github.com/creationix/nvm ,里面有安装的方式推荐。

如果你的电脑是 mac 那么可以通过复制下面的代码到你的命令行。

1
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash

它会安装nvm,并自动会在 .bashrc 文件中添加配置,傻瓜式安装

2. 升级nvm

直接到官网复制命令安装一遍来更新。简单方便

1
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.0/install.sh | bash

3. 安装切换各版本 node/npm

a. 安装

1
nvm install node

运行结果如下,成功安装最新的稳定版本。

1
2
3
4
5
6
Downloading and installing node v12.12.0...
Downloading https://nodejs.org/dist/v12.12.0/node-v12.12.0-darwin-x64.tar.xz...
################################################################################# 100.0%
Computing checksum with shasum -a 256
Checksums matched!
Now using node v12.12.0 (npm v6.11.3)

如果你想安装特定的版本,如 8.1.0 版本,执行下面的代码

1
nvm install 8.1.0 

运行结果如下,

1
2
3
4
Downloading and installing node v8.1.0...
Local cache found: $NVM_DIR/.cache/bin/node-v8.1.0-darwin-x64/node-v8.1.0-darwin-x64.tar.xz
Checksums match! Using existing downloaded archive $NVM_DIR/.cache/bin/node-v8.1.0-darwin-x64/node-v8.1.0-darwin-x64.tar.xz
Now using node v8.1.0 (npm v5.0.3)

b. 查看当前版本

可以通过下面的命令,来查看当前的使用的版本

1
nvm current

运行结果

1
v8.1.0

c. 切换版本

如何来切换呢?

1
nvm use v12.12.0

运行结果如下

1
Now using node v12.12.0 (npm v6.11.3)

是不是很方便呢~~

d. 使用国内服务器加速

可以在命令行中设置如下代码:

1
NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node

建议直接在 .zshrc 配置文件中加入上面的代码,一劳永逸。

4. 使用 registry 加速 npm

同理 nvm , npm 默认是从国外的源获取和下载包信息, 不慢才奇怪.

可以通过简单的 —registry 参数, 使用国内的镜像 http://registry.npm.taobao.org :

1
npm install koa --registry=http://registry.npm.taobao.org

那么有没有更好的方式来加速呢?使用 nrm 加速。

5. nrm 加速

https://github.com/Pana/nrm 官网

开发的npm registry 管理工具 nrm, 能够查看和切换当前使用的registry, 最近NPM经常 down 掉, 这个还是很有用的哈哈

我在国内使用npm init的时候会一直卡在那里,一直动不了,使用nrm,可以很方便的解决这个问题。建议在国内使用cnpm源。

a. 安装

1
npm install -g nrm

b.查看有哪些源

1
nrm ls

运行结果如下,* 号表示当前选择的源

1
2
3
4
5
6
7
  npm -------- https://registry.npmjs.org/
  yarn ------- https://registry.yarnpkg.com/
  cnpm ------- http://r.cnpmjs.org/
* taobao ----- https://registry.npm.taobao.org/
  nj --------- https://registry.nodejitsu.com/
  npmMirror -- https://skimdb.npmjs.com/registry/
  edunpm ----- http://registry.enpmjs.org/

c.切换源

1
nrm use cnpm

运行结果如下

1
Registry has been set to: http://r.cnpmjs.org/

brew 方式

1. 安装

安装brew, https://brew.sh/ 官网

1
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2. 安装 node

1
brew install node

3. 使用

1
node -v

接下来就可以使用啦~~

良药

如果你之前是通过 brew 安装的,想要换到 nvm 方式,那么使用如下方法。

1. 删除全局的node和npm

1
brew uninstall node

2. 然后删除系统剩余的node和node_modules

流程如下

  1. 删除/usr/local/lib中的所有node和node_modules,npm
  2. 删除/usr/local/lib中的所有node和node_modules,npm的文件夹
  3. 检查~/中所有的local, lib或者include文件夹, 删除里面所有node和node_modules,npm
  4. 在/usr/local/bin中, 删除所有node,npm的可执行文件

代码如下

1
2
3
4
5
6
7
8
sudo rm /usr/local/bin/npm
sudo rm /usr/local/share/man/man1/node.1
sudo rm /usr/local/lib/dtrace/node.d
sudo rm -rf ~/.npm
sudo rm -rf ~/.node-gyp
sudo rm /opt/local/bin/node
sudo rm /opt/local/include/node
sudo rm -rf /opt/local/lib/node_modules

结束语

本文介绍了 两种安装 node 的方式。大家喜欢用那种方式呢?欢迎留言哈~~