1. 程式人生 > >Node更絲滑的開啟方式

Node更絲滑的開啟方式

Node更絲滑的開啟方式

1. 使用背景

最近前端的一個專案,使用gulp作為工程化。在執行過程中出現如下錯誤 gulp[3192]: src\node_contextify.cc:628: Assertion args[1]->IsString()' failed.` 經過搜尋得到回覆表明,是當前電腦安裝的Node版本(14.x)太高了需要降級到(10.x)版本。需要解除安裝再安裝對應的版本,但是當我這個工程不再使用,想切回高的版本又得解除安裝再安裝,很是麻煩。當時就繼續深挖了一下,居然有人開發node版本管理這樣的小工具。經過下載安裝使用,果然很給力。

2. nvm管理node版本

首先從[https://github.com/coreybutler/nvm-windows/releases]下載nvm工具。官方提供了安裝版已經免安裝版。建議使用安裝版簡化手動配置環境變數過程。安裝nvm過程之前,請確保當前電腦中經解除安裝了已安裝的Node.根據提示一步步操作即可。根據我測試結果,有以下兩個建議

  • nvm安裝路徑最好修改一下,不使用預設地址
  • nodejs連結檔案使用預設值

安裝完成後,首先到你安裝目錄中找到 settings.txt 檔案,在該檔案中新增以下兩行配置

//公眾號:小院不小 vx:464884492
node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

接下來,執行一個命令視窗。輸入命令nvm version檢查是否安裝成功。如果沒有顯示版本號,請檢查:

  • 環境變數中是否存在NVM_HOME NVM_SYMLINK
  • 檢查PATH變數中是否新增nvm的執行路徑

一切就緒以後,就可以開始安裝任意版本的Node。我們已安裝node10為示範

  1. 輸入命令nvm install 10,工具會自動給下載nodejs 10.0.0版本
  2. 輸入命令nvm list,工具會顯示當前系統中所有安裝的nodejs版本
  3. 輸入命令nvm use 10,工具自動將當前系統node版本切換的10.0.0版本
  4. 輸入命令node -v,檢測node是否切換成功

重複以上幾個步驟,我們就可以實現node版本的任意切換

3. nrm管理npm倉庫地址

有node的地方就有npm。由於npm標準倉庫地址訪問不穩定,所以我們需要切換到國內的映象地址。在沒有使用nrm工具前,我們通過如下命令實現

 rem 公眾號:小院不小 vx:464884492
 npm config set registry http://registry.npm.taobao.org/

如果公司存在npm私服地址,在多個地址間切換很容易出錯,所以有必要引入nrm來管理所有的映象地址。在安裝nrm之前,有必要將npm全域性路徑自定到我們容易找到路徑下。依次在命令視窗執行以下兩條命令

rem 公眾號:小院不小 vx:464884492
npm config set cache "D:\nodejs\npm-cache"
npm config set prefix "D:\nodejs\npm_global"

接下來輸入命令npm install -g nrm安裝nrm.安裝完成後輸入命令nrm ls,得到如下結果

  npm -------- https://registry.npmjs.org/
  yarn ------- https://registry.yarnpkg.com/
  cnpm ------- http://r.cnpmjs.org/
* taobao ----- https://registry.npm.taobao.org/
  nj --------- https://registry.nodejitsu.com/
  npmMirror -- https://skimdb.npmjs.com/registry/
  edunpm ----- http://registry.enpmjs.org/

可以看到nrm已經將常用的映象地址儲存起來了,現在只需通過命令nrm use taobao就可以將npm映象地址切換到淘寶的映象庫

如果公司搭建了npm私服可以,假設私服地址為 http://192.168.225.19:4874/,可以依次執行以下命令切換到公司私服地址

rem 公眾號:小院不小 vx:464884492
nrm add company http://192.168.225.19:4874/
nrm use company

4. 總結

以上兩個工具,很輕巧也很方便。是前端人員以及node開發必備佳品。想了解更多幹貨請關注公眾號[小院不小],這裡可以學習還可以玩遊戲[地心俠士]