1.环境安装
操作系统: Ubuntu 16.04.2 LTS
1.1安装nvm
1
| ryan@ryan-900X5L:~/temp$ curl https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash
|
- Note
v0.33.4
is the latest version from creationix/nvm - 安装好后,关闭重新打开terminal,输入
nvm
可以验证是否安装 - 安装目录默认是~/.nvm
使用淘宝镜像
国内环境,使用淘宝镜像。配置环境变量,修改.bashrc
追加
1 2 3
| # taobao npm mirror export NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node
|
1.2 安装node
安装最新的node
或者指定node版本
1
| ryan@ryan-900X5L:~$ nvm install 6.11.4
|
然后可以检查当前已安装的node版本
1 2 3 4 5 6 7 8 9 10 11
| ryan@ryan-900X5L:~$ nvm ls iojs-v3.3.1 -> v6.11.4 v8.7.0 default -> node (-> v8.7.0) node -> stable (-> v8.7.0) (default) stable -> 8.7 (-> v8.7.0) (default) iojs -> iojs-v3.3 (-> iojs-v3.3.1) (default) lts/* -> lts/boron (-> v6.11.4) lts/argon -> v4.8.4 (-> N/A) lts/boron -> v6.11.4
|
可以看到箭头指向了 v6.11.4
, 现在切换回最新版本:
1
| ryan@ryan-900X5L:~$ nvm use 8.7.0
|
这时候可以查看node版本
1 2 3 4
| ryan@ryan-900X5L:~$ node -v v8.7.0 ryan@ryan-900X5L:~$ npm -v 5.4.2
|
安装淘宝镜像
1
| npm install -g cnpm --registry=https://registry.npm.taobao.org
|
注意,此时cnpm
是安装在当前的npm版本下的。比如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| ryan@ryan-900X5L:~$ nvm use 6.11.4 Now using node v6.11.4 (npm v3.10.10) ryan@ryan-900X5L:~$ node -v v6.11.4 ryan@ryan-900X5L:~$ cnpm 未找到 'cnpm' 命令,您要输入的是否是: 命令 'cpm' 来自于包 'cpm' (universe) 命令 'npm' 来自于包 'npm' (universe) 命令 'cxpm' 来自于包 'xpmutils' (universe) cnpm:未找到命令 ryan@ryan-900X5L:~$ nvm use 8.7.0 Now using node v8.7.0 (npm v5.4.2) ryan@ryan-900X5L:~$ cnpm -v cnpm@5.1.1 (/home/ryan/.nvm/versions/node/v8.7.0/lib/node_modules/cnpm/lib/parse_argv.js) npm@5.5.1 (/home/ryan/.nvm/versions/node/v8.7.0/lib/node_modules/cnpm/node_modules/npm/lib/npm.js) node@8.7.0 (/home/ryan/.nvm/versions/node/v8.7.0/bin/node) npminstall@3.1.4 (/home/ryan/.nvm/versions/node/v8.7.0/lib/node_modules/cnpm/node_modules/npminstall/lib/index.js) prefix=/home/ryan/.nvm/versions/node/v8.7.0 linux x64 4.8.0-58-generic registry=http://registry.npm.taobao.org
|
这种不好的是,更新替换npm需要重新安装cnpm. 于是可以推荐这样做:
在~/.bashrc
中添加alias:
1 2
| echo '#alias for cnpm alias cnpm="npm --registry=https://registry.npm.taobao.org --cache=~/.npm/.cache/cnpm --disturl=https://npm.taobao.org/dist --userconfig=~/.cnpmrc"' >> ~/.bashrc && source ~/.bashrc
|
这样,不论npm切换什么版本,cnpm都可以使用:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| ryan@ryan-900X5L:~$ node -v v8.7.0 ryan@ryan-900X5L:~$ cnpm -v 5.4.2 ryan@ryan-900X5L:~$ nvm ls iojs-v3.3.1 v6.11.4 -> v8.7.0 default -> node (-> v8.7.0) node -> stable (-> v8.7.0) (default) stable -> 8.7 (-> v8.7.0) (default) iojs -> iojs-v3.3 (-> iojs-v3.3.1) (default) lts/* -> lts/boron (-> v6.11.4) lts/argon -> v4.8.4 (-> N/A) lts/boron -> v6.11.4 ryan@ryan-900X5L:~$ nvm use 6.11.4 Now using node v6.11.4 (npm v3.10.10) ryan@ryan-900X5L:~$ cnpm -v 3.10.10
|
如果把terminal关闭之后,再重新打开发现
1 2 3 4
| ryan@ryan-900X5L:~$ node 程序“node”尚未安装。 您可以使用以下命令安装: sudo apt install nodejs-legacy
|
什么鬼?没装上?
如果遇到这个,可以查看当前nvm ls
, 发现并没有指定node 版本,这时候,nvm use 6.11.4
指定一个版本就可以了。
安装yarn
参照 https://yarnpkg.com/zh-Hans/docs/install
设置淘宝镜像
1
| yarn config set registry https://registry.npm.taobao.org
|
参考