[學習筆記]在不同專案中切換Node.js版本

林晓lx發表於2024-08-22

@

目錄
  • 使用 Node Version Manager (NVM)
    • 安裝 NVM
    • 使用 NVM 安裝和切換 Node.js 版本
    • 為專案指定 Node.js 版本
  • 使用環境變數指定 Node.js
    • 安裝多個版本的 Node.js
    • 設定環境變數
    • 驗證配置
    • 使用 npm 指令碼切換

在開發中,可能會遇到不同的Vue專案需要不同的Node.js,在開發機上如何快速切換Node的版本呢?

使用 Node Version Manager (NVM)

安裝 NVM

在 Linux 或 macOS 上可以透過以下命令安裝 NVM:

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

在 Windows 上,可以下載並安裝 nvm-windows

使用 NVM 安裝和切換 Node.js 版本

安裝一個特定版本的 Node.js:

nvm install 16

nvm install 22

切換到指定的 Node.js 版本:

nvm use 22

可以透過以下命令檢查當前使用的 Node.js 版本:

node -v

為專案指定 Node.js 版本

可以在專案根目錄中建立一個 .nvmrc 檔案,裡面指定該專案需要使用的 Node.js 版本:

16

然後,在進入專案目錄時,執行以下命令自動使用 .nvmrc 中指定的版本:

nvm use

使用環境變數指定 Node.js

安裝多個版本的 Node.js

下載 Node.js,並在不同目錄下安裝多個版本。如C:\Program Files\nodejs16C:\Program Files\nodejs22

在這裡插入圖片描述

在這裡插入圖片描述

設定環境變數

可以在系統的環境變數配置中手動設定 NODE_HOME

在 Windows 上:

  1. 開啟 "系統屬性" > "高階系統設定" > "環境變數"。
  2. 在 "系統變數" 或 "使用者變數" 中點選 "新建"。
  3. 建立一個新的變數 NODE_HOME,並設定它的值為 Node.js 安裝路徑。

在這裡插入圖片描述

  1. 找到 Path 變數,點選 "編輯"。
  2. 新增一個新條目:%NODE_HOME%

在 macOS/Linux 上:

  1. 開啟終端,編輯 .bashrc.bash_profile.zshrc 檔案:

    export NODE_HOME=/usr/bin/nodejs22 export PATH=$NODE_HOME:$PATH

  2. 儲存檔案並執行 source ~/.bashrcsource ~/.zshrc 以使更改生效。

透過更改 NODE_HOME 環境變數的路徑,實現切換Node.js 的版本。

驗證配置

可以透過以下命令驗證 Node.js 是否已成功透過 NODE_HOME 變數載入:

node -v

輸出應顯示所配置的 Node.js 版本:

在這裡插入圖片描述

cross-env 是一個用於在不同作業系統上設定和使用環境變數的工具,可以用它來切換 NODE_HOME 環境變數,以確保在不同的作業系統上都能正確設定和使用 Node.js 的路徑。

package.json 中,可以定義如下的 npm 指令碼:

{
  "scripts": {
    "set-node16": "cross-env NODE_HOME=C:\\Program Files\\nodejs16",
    "set-node22": "cross-env NODE_HOME=C:\\Program Files\\nodejs22",
    "set-node16-unix": "cross-env NODE_HOME=/usr/bin/nodejs16",
    "set-node22-unix": "cross-env NODE_HOME=/usr/bin/nodejs22"
  }
}

使用 npm 指令碼切換

可以根據作業系統和需要的 Node.js 版本執行相應的指令碼:

在 Windows 上:

npm run set-node16

在 Unix 系統上(Linux/Mac):

npm run set-node16-unix

總結:最好是透過第一種方式,因為手動配置環境變數的方式會產生依賴,需要在同事的電腦上手動配置。

相關文章