Vite 5 現已發布,這是 Vite 發展道路上的又一個重要里程碑。新版本采用了 Rollup 4,大大提升了構建性能;此外還帶來了一些新選項,可用于提高開發服務器的性能。
公告指出,Vite 5 的重點是清理 API(刪除已棄用的功能),并精簡了幾個功能以解決長期存在的問題。例如,將 define轉換為使用正確的 AST 替換,而不是使用 regexes。項目團隊表示,他們將繼續推進實現面向未來的 Vite。
Node.js 支持
Vite 不再支持已 EOL 的 Node.js 14 / 16 / 17 / 19。現在需要 Node.js 18 / 20+。
性能
除了 Rollup 4 的構建性能改進之外,還有一個新指南可幫助用戶識別和修復常見性能問題:https://vitejs.dev/guide/performance。
Vite 5 還引入了 server.warmup,這是一個改善啟動時間的新功能。它允許你定義應在服務器啟動后立即進行預轉換的模塊列表。當使用 --open或 server.open時,Vite 還會自動預熱應用程序的 entry point 或所提供的 URL,以便打開。
主要變化
- Vite 現已由 Rollup 4 提供支持
- CJS Node API 已被棄用
- Reworkdefine 和 import.meta.env.* 替換策略
- SSR 外部化模塊值現已與 production 一致
- worker.plugins 現在是一個函數
- 允許包含. 的路徑回退到 index.html
- 協調開發和預覽 HTML serving 行為
- 現在默認在.vite 目錄中生成 Manifest 文件
- CLI 快捷鍵需要額外按下 Enter 鍵
- 更新 experimentalDecorators 和 useDefineForClassFieldsType 行為
- 移除 --httpsflag 和 https: true
- 移除 resolvePackageEntry 和 resolvePackageDataAPI
- 移除之前已棄用的 API
- 了解更多有關影響插件和工具作者的高級更改信息
更多詳情可查看 Vite 5 Changelog:https://vitejs.dev/blog/announcing-vite5