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