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 已被弃用
- Rework
define
和import.meta.env.*
替换策略 - SSR 外部化模块值现已与 production 一致
worker.plugins
现在是一个函数- 允许包含
.
的路径回退到 index.html - 协调开发和预览 HTML serving 行为
- 现在默认在
.vite
目录中生成 Manifest 文件 - CLI 快捷键需要额外按下
Enter
键 - 更新
experimentalDecorators
和useDefineForClassFields
TypeScript 行为 - 移除
--https
flag 和https: true
- 移除
resolvePackageEntry
和resolvePackageData
API - 移除之前已弃用的 API
- 了解更多有关影响插件和工具作者的高级更改信息
更多详情可查看 Vite 5 Changelog。