紀錄工作經驗、相關知識,解決技術相關問題。

React, 工作雜談, 網站優化, 資訊相關

Next.js 13 升級 14 指令與完整步驟速查(npm/yarn/pnpm/bun)

Next.js 13 升級 14 指令與完整步驟速查(npm/yarn/pnpm/bun) 特色圖片

將專案從 Next.js 13 升級至 14 版本時,除了直接執行對應的指令外,開發者最常忽略的是系統環境與相依套件的匹配問題。升級 Next.js 14 不僅需要更新框架本身,更強制要求 Node.js 必須達到最低版本門檻,且 React 與 react-dom 也必須同步升級至對應的最新穩定版,否則極易在建置(Build)或執行階段引發相依性衝突。

本文整理四大主流套件管理工具(npm、yarn、pnpm、bun)在進行「Next.js 13 升級 14」時的標準指令,並補充環境需求與升級後的常見注意事項,協助開發團隊順利完成版本迭代。

環境前置檢查與 Node.js 版本的對應要求

在執行升級指令之前,必須確認本機與 CI/CD 伺服器的執行環境是否符合 Next.js 14 的最低規格。

Next.js 14 的硬性環境門檻如下:

  • Node.js 最低版本需求:必須為 Node.js 18.17.0 或更高版本(建議使用最新的 LTS 版本)。
  • React 相依性:必須同步升級至 18.2.0 或更高版本。

若環境中的 Node.js 版本低於 18.17.0,請務必先透過 nvm(Node Version Manager)或其他工具切換或升級 Node.js,再執行後續的套件更新。

四大套件管理工具的升級指令

針對不同的專案環境,請選擇對應的套件管理工具執行更新指令。這些指令會同時更新 Next.js、React、react-dom 以及 eslint-config-next。

1. 使用 npm 升級

若專案使用 npm 進行相依性管理,請在終端機執行以下指令:

npm i next@latest react@latest react-dom@latest eslint-config-next@latest

2. 使用 yarn 升級

若專案使用 Yarn(Classic 或 Berry),請執行以下指令:

yarn add next@latest react@latest react-dom@latest eslint-config-next@latest

3. 使用 pnpm 升級

若專案採用 pnpm,由於其嚴格的幽靈相依性(Phantom Dependencies)與內容定址儲存機制,請使用 up 指令來確保所有相關套件正確更新:

pnpm up next react react-dom eslint-config-next --latest

4. 使用 bun 升級

若專案採用高效能的 Bun 套件管理工具,請執行以下指令:

bun add next@latest react@latest react-dom@latest eslint-config-next@latest

升級後的常見檢查重點

完成上述指令並更新 package.json 後,建議執行以下步驟以確保專案運作正常:

  1. 清除快取與建置資料夾:
    升級後強烈建議刪除本地的 .next 快取資料夾與 node_modules(若遇奇怪報錯),重新安裝並執行開發伺服器:
    rm -rf .next node_modules
    npm install # 或對應的套件管理工具安裝指令
    npm run dev
  2. 檢查 Server Actions 相關設定:
    Next.js 14 將 Server Actions 從實驗性功能轉為穩定版本。若專案在 13 版本中開啟了實驗性設定,請檢查 next.config.js 是否需要移除舊的 serverActions: true 旗標(14 版本中已預設啟用)。
  3. TypeScript 型別檢查:
    執行 npx tsc --noEmit 確保升級 React 與 Next.js 之後,專案內部的型別定義沒有遭到破壞。

參考資料與延伸閱讀

發佈留言