一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

使用 nvm 管理不同版本的 node 與 npm

 quasiceo 2018-05-04


補(bǔ)充說(shuō)明:Mac 下通過(guò) brew install nvm 所安裝的 nvm ,由于安裝路徑不同,無(wú)法正確啟用。建議使用 brew uninstall nvm 卸載掉之后,通過(guò)本文的方案重新安裝一次。

---

最近 NodeJS 的版本更新速度有點(diǎn) Chrome 的跡象,4.0 版本沒(méi)發(fā)布多久,又推出了 5.0 。升級(jí) NodeJS 之后可以很方便的開(kāi)始使用一些 ES6 的語(yǔ)言特性,但又會(huì)導(dǎo)致團(tuán)隊(duì)內(nèi)部的 mz-fis 框架無(wú)法更新,因?yàn)樗鼤簳r(shí)只支持 v0.12 版本。于是團(tuán)隊(duì)開(kāi)始試用管理 node 版本的工具  nvm,試用后發(fā)現(xiàn) Mac 下很好用,推薦大家盡快用起來(lái)。

nvm 是 Mac 下的 node 管理工具,有點(diǎn)類(lèi)似管理 Ruby 的 rvm,如果是需要管理 Windows 下的 node,官方推薦是使用 nvmwnvm-windows 。

以下具體說(shuō)下 Mac 系統(tǒng)中的安裝與使用細(xì)節(jié)(Windows 系統(tǒng)僅供類(lèi)比參考)。

 

一、卸載已安裝到全局的 node/npm

如果之前是在官網(wǎng)下載的 node 安裝包,運(yùn)行后會(huì)自動(dòng)安裝在全局目錄,其中

node 命令在 /usr/local/bin/node ,npm 命令在全局 node_modules 目錄中,具體路徑為 /usr/local/lib/node_modules/npm

安裝 nvm 之后最好先刪除下已安裝的 node 和全局 node 模塊:

npm ls -g --depth=0 #查看已經(jīng)安裝在全局的模塊,以便刪除這些全局模塊后再按照不同的 node 版本重新進(jìn)行全局安裝

sudo rm -rf /usr/local/lib/node_modules #刪除全局 node_modules 目錄
sudo rm /usr/local/bin/node #刪除 node
cd  /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk '{print $9}'| xargs rm #刪除全局 node 模塊注冊(cè)的軟鏈

 

二、安裝 nvm

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

安裝完成后請(qǐng)重新打開(kāi)終端環(huán)境,Mac 下推薦使用 oh-my-zsh 代替默認(rèn)的 bash shell。

 

三、安裝切換各版本 node/npm

復(fù)制代碼
nvm install stable #安裝最新穩(wěn)定版 node,現(xiàn)在是 5.0.0
nvm install 4.2.2 #安裝 4.2.2 版本
nvm install 0.12.7 #安裝 0.12.7 版本

# 特別說(shuō)明:以下模塊安裝僅供演示說(shuō)明,并非必須安裝模塊 nvm use
0 #切換至 0.12.7 版本
npm install -g mz-fis #安裝 mz-fis 模塊至全局目錄,安裝完成的路徑是 /Users/<你的用戶(hù)名>/.nvm/versions/node/v0.12.7/lib/mz-fis
nvm use 4 #切換至 4.2.2 版本
npm install -g react-native-cli #安裝 react-native-cli 模塊至全局目錄,安裝完成的路徑是 /Users/<你的用戶(hù)名>/.nvm/versions/node/v4.2.2/lib/react-native-cli

nvm alias default 0.12.7 #設(shè)置默認(rèn) node 版本為 0.12.7
復(fù)制代碼

 

四、使用 .nvmrc 文件配置項(xiàng)目所使用的 node 版本

如果你的默認(rèn) node 版本(通過(guò) nvm alias 命令設(shè)置的)與項(xiàng)目所需的版本不同,則可在項(xiàng)目根目錄或其任意父級(jí)目錄中創(chuàng)建 .nvmrc 文件,在文件中指定使用的 node 版本號(hào),例如:

cd <項(xiàng)目根目錄>  #進(jìn)入項(xiàng)目根目錄
echo 4 > .nvmrc #添加 .nvmrc 文件
nvm use #無(wú)需指定版本號(hào),會(huì)自動(dòng)使用 .nvmrc 文件中配置的版本
node -v #查看 node 是否切換為對(duì)應(yīng)版本

 

五、nvm 與 n 的區(qū)別

node 版本管理工具還有一個(gè)是 TJ 大神的 n 命令,n 命令是作為一個(gè) node 的模塊而存在,而 nvm 是一個(gè)獨(dú)立于 node/npm 的外部 shell 腳本,因此 n 命令相比 nvm 更加局限。

由于 npm 安裝的模塊路徑均為 /usr/local/lib/node_modules ,當(dāng)使用 n 切換不同的 node 版本時(shí),實(shí)際上會(huì)共用全局的 node/npm 目錄。 因此不能很好的滿(mǎn)足『按不同 node 版本使用不同全局 node 模塊』的需求。

 

因此建議各位盡早開(kāi)始使用 nvm ,以免出現(xiàn)全局模塊無(wú)法更新的問(wèn)題。

當(dāng)然,如果你用的是 windows 操作系統(tǒng),我只能說(shuō) …… 朋友,能不能早點(diǎn)換個(gè) Mac ,做一個(gè)有品位的程序猿呢:P

 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀(guān)點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多

    福利专区 久久精品午夜| 国产精品视频一级香蕉| 激情丁香激情五月婷婷| 日本熟女中文字幕一区| 扒开腿狂躁女人爽出白浆av| 久久精品亚洲精品一区| 精品国模一区二区三区欧美| 欧美亚洲91在线视频| 国产伦精品一区二区三区高清版| 日韩视频在线观看成人| 欧美日韩乱一区二区三区| 午夜福利视频六七十路熟女| 日韩精品一区二区三区含羞含羞草| 色婷婷国产精品视频一区二区保健| 亚洲一区二区三区福利视频| 成年男女午夜久久久精品| 91精品视频免费播放| 免费在线播放不卡视频| 超薄肉色丝袜脚一区二区| 精品熟女少妇一区二区三区| 日本高清不卡在线一区| 国产内射在线激情一区| 亚洲欧洲日韩综合二区| 六月丁香六月综合缴情| 东北老熟妇全程露脸被内射| 午夜免费精品视频在线看| 在线日韩中文字幕一区| 日韩国产亚洲欧美另类| 又色又爽又黄的三级视频| 成年男女午夜久久久精品| 久久机热频这里只精品| 免费大片黄在线观看国语| 俄罗斯胖女人性生活视频| 久久精品亚洲精品国产欧美| 久久99亚洲小姐精品综合| 国产欧美精品对白性色| 亚洲一区二区三区中文久久| 国产精品成人又粗又长又爽| 日本亚洲精品在线观看| 不卡视频免费一区二区三区| 色综合视频一区二区观看|