|
在安裝和使用這三種工具時,我們有很多方式可以選擇,這些方法各有優(yōu)劣,每個人都有自己用起來比較習(xí)慣的配置,所以我在這里記錄下自己比較習(xí)慣的一種安裝方式與其他一些可能的選項(xiàng)。 NVM、NPM、Node.js的關(guān)系假定我們的最終目的是為了安裝并使用Node.js,那么我們有兩種常規(guī)的選擇:
第一種方式非常直接,搜索Node.js,在官網(wǎng)下載需要的的版本并進(jìn)行安裝就可以了,但是一般不推薦這種方式,因?yàn)镹ode.js的版本眾多,開發(fā)時不同的項(xiàng)目可能會使用不同的版本,每次面對不同的項(xiàng)目都要重新安裝,版本的切換十分麻煩。
為了解決上面的問題,使用NVM是一個不錯的選擇,我們先看的NVM的全稱:Node Version Manager,也就是說NVM是Node.js的版本管理器,通過NVM我們就可以安裝多個不同版本的Node.js并在需要的時候進(jìn)行切換,具體的方法在下面介紹。 NVM是Node.js管理器,那么NPM呢?還是看全稱:Node Package Manager,也就是Node.js包管理器,用于管理Node的大量擴(kuò)展API。在安裝Node.js時就會自動安裝相應(yīng)版本的NPM。 NVM直接從GitHub上下載 下載地址 分成安裝版(setup)和免安裝版(noinstall),區(qū)別不大但如果希望能在全局的各個文件位置都可以使用NVM、NPM和Node.js這些工具的指令,要注意使用免安裝版需要自行設(shè)置環(huán)境變量
安裝版(setup)安裝過程需要設(shè)置兩個路徑,就是環(huán)境變量相應(yīng)的值,分別是NVM和Node.js的路徑,建議路徑中不要有空格,安裝時會自動建立環(huán)境變量。
免安裝版(noinstall)設(shè)置環(huán)境變量使用免安裝版時可以配置環(huán)境變量如下:
NVM_HOME 就是NVM所在的目錄,NVM_SYMLINK 則是Node.js的目錄,但變量名看起來好像沒什么關(guān)系,原因我們在下面切換Node.js版本的操作方法處說明。 驗(yàn)證nvm安裝安裝完成后我們可以通過
安裝指定版本的Node.js
命令很簡單,但是在版本號的選擇上似乎有些問題,最開始我們就說到Node.js版本眾多,這里我到底該選擇哪個版本呢? 我們回過頭看下Node.js的首頁,可以看到兩種版本
關(guān)于Node.js版本的成因和各種具體的說明已經(jīng)有文章寫得很明確了,官網(wǎng)頁面也有說明,有興趣可以去了解一下,根據(jù) Recommended For Most Users 和 Latest Features 可以得出一個簡單的結(jié)論:通常情況,為了穩(wěn)定選擇LTS版本,為了嘗鮮選擇Current版本。 另外值得一提的就是Node.js采用奇偶版本號的形式,奇數(shù)為非穩(wěn)定版(如9.11、15.2.1),偶數(shù)為穩(wěn)定版(如10.23、12.19.1),通過這個也可以簡單判斷。 但既然我們使用了nvm,難道還要每次去Node,js官網(wǎng)看下版本再安裝嗎?當(dāng)然不需要,通過指令
下載服務(wù)器在開始安裝之前還有一件事要注意,npm與Node.js的默認(rèn)下載服務(wù)器均在國外,國內(nèi)進(jìn)行下載時往往有速度較慢的問題,我們可以通過配置為淘寶鏡像進(jìn)行解決。在安裝目錄下面我們可以找到名為 settings.txt 的文件,打開并在最后加上兩行來將Node.js和npm的下載服務(wù)器地址替換為服務(wù)器在國內(nèi)的淘寶鏡像:
切換Node.js版本得到版本號后執(zhí)行上面的install指令進(jìn)行安裝。
此時可以先通過
可以看到已經(jīng)有一個版本的Node.js被安裝了,也許這時已經(jīng)有人開始躍躍欲試地輸入 輸入
可以看到提示我們已經(jīng)切換到對應(yīng)的版本,之后可以通過
此時我們就可以用我們熟悉的命令來查看一下Node.js和npm的安裝情況了。
關(guān)于nvm版本切換的實(shí)質(zhì)在最開始使用nvm的時候我遇到了一些特殊的情況導(dǎo)致版本切換功能整個失效,借這個問題我觀察了一下nvm的安裝目錄從而發(fā)現(xiàn)了端倪。大家應(yīng)該還記得,在最初安裝nvm的時候我們選擇了兩個路徑,一個是nvm的路徑,另一個是Node.js的路徑,但是直到我們安裝第一個版本的Node.js后,這個文件夾也是未使用的狀態(tài),此時再查看nvm的安裝目錄,可以看到有對應(yīng)版本號的文件夾被創(chuàng)建,里面就是對應(yīng)版本Node.js的文件,每一個版本對應(yīng)一個文件夾。
那版本切換時怎么做到的呢?如果使用普通權(quán)限的命令提示行來進(jìn)行版本切換操作,我們會發(fā)現(xiàn)系統(tǒng)提示cmd申請管理員權(quán)限,同意操作后再查看之前的nodejs文件夾:
圖標(biāo)有所變化,看到左下角的標(biāo)記應(yīng)該可以猜到這里可能是用了Windows系統(tǒng)中的快捷方式來實(shí)現(xiàn)這一操作,右鍵-屬性查看一下果不其然:
這個文件夾此時就變成了nvm目錄下的對應(yīng)版本文件夾的快捷方式,切換版本正是在進(jìn)行創(chuàng)建或修改快捷方式這一操作。 而且我們可以回憶一下在最初安裝時設(shè)置的系統(tǒng)變量,nodejs目錄采用的SYMLINK可能就是System Link這一縮寫,所以每次切換版本,Node.js的全局變量也已經(jīng)設(shè)置好了,我們自然可以直接在各個文件位置使用node和npm指令。
NPM關(guān)于NPM的配置我們還可以進(jìn)行一些小的調(diào)整。輸入
紅線圈出的兩個部分默認(rèn)未修改的情況應(yīng)該是在C盤的用戶目錄下,這兩個路徑是npm全局包的安裝和緩存目錄。在我的C盤目錄比較拮據(jù)的情況下,將全局包安裝在C盤顯然不太合適,所以我選擇將這兩個路徑改到之前nvm目錄的附件,便于查看和管理,指令如下:
接下來可以安裝一個全局包試一下:
安裝完成,全局查看可以看到當(dāng)前的全局目錄和vue已經(jīng)安裝成功:
疑問由于npm現(xiàn)在已經(jīng)固定包的安裝目錄了,即使切換Node.js版本,npm的包安裝目錄也仍然是我們設(shè)置的文件夾,使用 |
|
|