跳轉到內容

Vite 7.0 釋出!

2025年6月24日

Vite 7 Announcement Cover Image

我們很高興分享 Vite 7 的釋出!距離 Evan You 向 Vite 倉庫提交第一個 commit 已經過去 5 年了,沒有人能預料到前端生態系統在這期間發生了多大的變化。大多數現代前端框架和工具現在都在協同工作,構建在 Vite 的共享基礎設施之上。透過在更高層面進行共享,它們能夠以更快的速度進行創新。Vite 現在每週被下載 3100 萬次,自上次大版本釋出以來的七個月內增加了 1400 萬次。

今年,我們將邁出幾大步。首先,ViteConf 將舉辦線下活動!Vite 生態系統將於 10 月 9 日至 10 日在阿姆斯特丹聚會!由 JSWorldBoltVoidZero 以及 Vite 核心團隊聯合組織!我們此前舉辦了三屆精彩的 ViteConf 線上活動,我們迫不及待地想在現實中見面。請檢視演講者名單並在 ViteConf 官網購買門票!

此外,VoidZero 在構建 JavaScript 生態系統開源統一開發工具鏈的使命上繼續取得重大進展。在過去的一年中,VoidZero 團隊一直在致力於開發 Rolldown(一個基於 Rust 的下一代打包器),作為現代化 Vite 核心工作的一部分。您可以立即透過使用 rolldown-vite 包代替預設的 vite 包來嘗試基於 Rolldown 的 Vite。它是一個直接替代品,因為 Rolldown 未來將成為 Vite 的預設打包器。切換後應該可以縮短您的構建時間,對於大型專案尤其明顯。請閱讀 Rolldown-vite 釋出部落格文章 和我們的 遷移指南瞭解更多資訊。

透過 VoidZero 和 NuxtLabs 的合作,Anthony Fu 正在著手打造 Vite DevTools。它們將為所有基於 Vite 的專案和框架提供更深入、更具洞察力的除錯和分析功能。您可以閱讀 VoidZero 與 NuxtLabs 聯手開發 Vite Devtools 的部落格文章瞭解更多詳情。

快速連結

使用 vite.new 線上體驗 Vite 7,或者透過在你喜愛的框架中執行 pnpm create vite 來在本地搭建 Vite 應用。檢視 入門指南以獲取更多資訊。

我們邀請您幫助我們改進 Vite(加入超過 1.1K 位 Vite 核心貢獻者 的行列)、我們的依賴項,或生態系統中的外掛和專案。請在我們的 貢獻指南中瞭解更多資訊。一個好的入門方式是:分類 Issues稽核 PRs、基於公開的 Issue 傳送測試 PR,以及在 Discussions 或 Vite Land 的 幫助論壇中支援他人。如果您有疑問,請加入我們的 Discord 社群,並在 #contributing 頻道與我們交流。

透過在 BlueskyXMastodon 上關注我們,保持最新狀態並與在 Vite 之上構建專案的其他人建立聯絡。

Node.js 支援

Vite 現在需要 Node.js 20.19+ 或 22.12+。我們已停止支援 Node.js 18,因為它已於 2025 年 4 月底達到 生命週期終點 (EOL)

我們要求這些新版本範圍,以便 Node.js 能夠在無需標誌的情況下支援 require(esm)。這使我們能夠將 Vite 7.0 分發為純 ESM 版本,同時不會阻止 CJS 模組引入 Vite JavaScript API。請檢視 Anthony Fu 的文章 Move on to ESM-only,瞭解生態系統中 ESM 當前狀態的詳細回顧。

預設瀏覽器目標更改為“廣泛使用的基準”

Baseline(基準)為我們提供了關於哪些 Web 平臺功能在當前核心瀏覽器集上可用的清晰資訊。“廣泛使用的基準”(Baseline Widely Available) 表示該功能已非常成熟,可在許多裝置和瀏覽器版本上使用,並且已在瀏覽器中可用至少 30 個月。

在 Vite 7 中,預設瀏覽器目標已從 'modules' 更改為新的預設值:'baseline-widely-available'。瀏覽器集合將在每個大版本更新,以匹配與“廣泛使用的基準”功能相容的最低瀏覽器版本列表。build.target 的預設瀏覽器值在 Vite 7.0 中發生了變化。

  • Chrome 87 → 107
  • Edge 88 → 107
  • Firefox 78 → 104
  • Safari 14.0 → 16.0

此更改為未來版本的預設瀏覽器目標增加了可預測性。

Vitest

對於 Vitest 使用者,Vitest 3.2 起支援 Vite 7.0。您可以在 Vitest 3.2 釋出部落格文章中閱讀更多關於 Vitest 團隊如何持續改進 Vite 測試體驗的內容。

環境 API (Environment API)

Vite 6 是自 Vite 2 以來最重要的重大發布,透過 新的實驗性環境 API 增加了新功能。我們保持這些新 API 為實驗性狀態,同時讓生態系統評估這些新 API 如何適配他們的專案並提供反饋。如果您正在基於 Vite 構建專案,我們鼓勵您測試這些新 API,並在 此處的公開反饋討論中 聯絡我們。

在 Vite 7 中,我們添加了一個新的 buildApp 鉤子,讓外掛可以協調環境的構建。請在 框架環境 API 指南中閱讀更多資訊。

我們想感謝那些一直在測試新 API 並幫助我們穩定新功能的團隊。例如,Cloudflare 團隊宣佈了其 Cloudflare Vite 外掛的 1.0 版本,以及對 React Router v7 的官方支援。他們的外掛展示了環境 API 在執行時提供程式方面的潛力。請在 "Just use Vite”… with the Workers runtime 瞭解更多關於他們的方法和未來步驟。

遷移到 Vite 7

從 Vite 6 升級到 Vite 7 應該是一個順利的過程。我們移除了已經廢棄的功能,例如 Sass 舊版 API 支援和 splitVendorChunkPlugin,這些應該不會影響您的專案。我們仍然建議您在升級前檢視 詳細的遷移指南

完整的更改列表請見 Vite 7 更新日誌

鳴謝

Vite 7 由 Vite 團隊在廣大貢獻者、下游維護者和外掛作者的幫助下共同打造。特別感謝 sapphi-redrolldown-vite 和本次釋出中所做的傑出貢獻。Vite 由 VoidZero 提供,並與 BoltNuxt Labs 合作。我們還要感謝 Vite GitHub 贊助者Vite Open Collective 上的贊助商。