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. 但願各位關注一下個人公衆號吧,新的文章第一時間發到公衆號,公衆號主要發一些我的隨筆、讀書筆記、還有一些技術熱點和實時熱點,而且還有很是吸引人的我我的自費抽獎活動哦~

相關文章
相關標籤/搜索