Node 的 3m 管理法,让你开发起来只专一写 bug

不一样的系统,安装 Node 的方式也是不一样的,并且有的电脑上可能会存在不少 Node 版本,而且咱们在使用到 Node 的地方,都会用到 Node 配套的 npm 包,你们最诟病的应该就是 npm 下载太慢的问题。这个时候就能够实践一下下面的 3m 安装法。node

主要来自狼叔的《了不得的 Node 卷一》。webpack

先来附上一张脑图,吸引一下你们:git

看完脑图,咱们的正文开始把,若是有电脑的话,最好跟着操做一下。程序员

nvm(node version manager)

nvm 主要用于开发阶段,解决 Node 的多版本共存、切换等问题。github

安装 nvm

如下是 mac 版的安装,window 和 liunx 能够参考官网web

直接在终端执行如下命令便可安装:npm

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash
复制代码

执行完成后,须要拷贝下面的环境变量json

export NVM_DIR="${XDG_CONFIG_HOME/:-$HOME/.}nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
复制代码

而后放到 ~/.bashrc 文件中,若是使用的是 zsh,就须要把环境变量放到 ~/.zshrc 文件中。bash

能够经过 cat 命令进行查看确认。网络

cat ~/.bashrc | grep nvm
复制代码

若是看到了你上面 copy 的环境变量,这个时候就已经安装成功了,在命令行中经过如下命令查看 nvm 的版本号。

nvm --version
# 0.34.0
复制代码

查看可安装版本

咱们能够经过 nvm,去查看具体能够安装的版本,既然做为一个程序员,那咱们就不要去官网下载包,而后双击安装了,咱们用命令行进行安装吧。

nvm nvm ls-remote
# 这个时候就会将能够安装的版本都列出来
复制代码

咱们不用一一了解,正常开发只要使用 LTS(稳定版本)版本就能够了,若是你想了解 Node 最新的一些改动,咱们能够安装最新的尝鲜版。

安装指定版本

咱们能够直接使用命令安装本身想安装的版本。

nvm install 10.16.0
复制代码

安装完成以后咱们能够查看 node 版本所在位置,也能够查看目前 node 版本。

# 查看node安装位置
which node
# /Users/syp/.nvm/versions/node/v10.16.0/bin/node

# 查看node版本
node -v
# 10.16.0
复制代码

切换指定版本

使用 nvm 还能够随意切换版本。

nvm use 10.15.3
复制代码

这个时候就表示切换成功了。

列出本机版本

咱们能够查看本机具体安装了哪些 node 版本。

nvm ls
复制代码

切换了 node 版本以后,有时会发生全局安装的模块不能用,这个时候咱们直接使用如下命令就能够将全局模块进行从新安装。

nvm reinstall-packages
复制代码

npm(node package manager)

对于 npm,相信你们已经很熟悉了,看名字,顾名思义就是解决 Node 模块问题,其实自己 Node 也是一个模块,咱们平时使用的 webpack,使用 npm install webpack 以后,webpack 也是一个模块。

安装 npm

在安装 Node 时,就会配套安装对应的 npm 版本,这个就不赘述了。

可使用 npm -v 查看本机的 npm 版本。

使用 npm 安装模块

npm 在安装一个模块时,后面会有一些其余的参数。

好比:

  • npm install webpack:将模块安装到本地 node_modules 中,可是不保存到 package.json 中。

  • npm install webpack --save-prod:--save-prod 能够简写成 -P,会安装到本地的 node_modules 中,而且会保存到 package.json 的 dependencies 中,上线时使用。

  • npm install webpack --save-dev:--save-dev 能够简写成 -D,会安装到本地的 node_modules 中,而且会保存到 package.json 的 devDependencies 中,通常测试开发编译时使用。

  • npm install webpack --global:--global 能够简写成 -g,会安装成全局模块。

具体 package.json 的一些问题,能够参考我写的另一篇文章package.json 使用指南

nrm(node registry manager)

nrm 能够解决 npm 镜像访问慢的问题,还能够对各个 npm 的镜像进行速度测试,随意切换 npm 镜像源。

咱们在平时安装 npm 模块时,由于 npm 的源是在国外,因此安装起来会很是慢,常常听到其余人告诉你,使用淘宝的镜像或者使用 cnpm 吧,其实不论是 cnpm,仍是淘宝的镜像,都是一个 npm 的源,若是你想根据网速随意切换源的话,这个时候就要用到 nrm 了。

安装 nrm

nrm 是 npm 的一个模块,咱们能够直接使用 npm 进行安装。

sudo npm install nrm --global
复制代码

由于安装的是全局模块,为了以防万一,使用 sudo 进行安装。

测试

你们最关心的来了,咱们可使用 nrm 对 npm 的源进行测速,而后使用当前网络下最快的源。

nrm test
复制代码

*表明当前源,从我目前的网速来看,这几个源的状态都还不错,我仍是使用 npm 源,由于不会有一些奇怪的 bug 产生。根据你的网速自行选择,若是 npm 源速度不错的话,仍是建议使用 npm 源,其次才是 cnpm 和 taobao。

切换源

咱们在切换源以前要知道具体的源对应的连接,这个时候若是去网上找的话,那就太麻烦了,nrm 也就没什么做用了。

nrm ls
复制代码

这个时候就能够看到各个 npm 源对应的连接了,前边是简称,咱们切换源的时候,直接使用简称就能够。

nrm use taobao
复制代码

这个时候再经过 nrm ls 查看源的列表,就会发现咱们切换成功了。

增长源

有一些大公司会本身去搭建 npm 源,好比咱们用的 taobao 源,其实就是阿里本身搭建的。若是大家公司有本身的 npm 源,这个时候你就能够经过下面的命令把本身公司的源添加到你的 npm 源列表中。

nrm add yourcompany http://registry.npm.yourcompany.com/
复制代码

不知道各位有没有在读的过程当中,跟着一块儿操做呢,若是跟着一块儿操做了,那恭喜你,如今能够愉快的写 bug 了,若是没有操做的小伙伴,在有电脑的状况下,赶忙操做一波吧。

虽然 3m 安装起来还挺复杂的,可是当安装完以后,使用起来也是很爽的,不再用操心 node 版本的问题,也不用操心 npm 下载慢的问题,使用 3m 工具,让你的开发起来只须要用心作一件事就好,那就是写 bug。😆

阅读完后两部曲

  1. 喜欢的小伙伴点个赞吧,感受对身边人有帮助的,麻烦动动手指,分享一下。很是感谢各位花时间阅读完,同时很感谢各位的点赞和分享。
  2. 但愿各位关注一下个人公众号吧,新的文章第一时间发到公众号,公众号主要发一些我的随笔、读书笔记、还有一些技术热点和实时热点,而且还有很是吸引人的我我的自费抽奖活动哦~

相关文章
相关标签/搜索