Vite 5.0 的发布标志着这个前端开发工具的又一次飞跃。在这个版本中,我们看到了更高效的构建性能、API 的清理与精简,以及一系列新特性的引入。本文将以开发者的角度深入探讨 Vite 5.0 的一些重要变化和改进。
构建性能提升
Vite 5.0 引入了 Rollup 4,这意味着构建性能得到了显著提升。这个版本的 Rollup 不仅带来了更好的性能,还为 Vite 打开了更多的可能性。通过与 Vite 结合,Rollup 4 为项目构建带来了巨大的提升,使得开发者可以更高效地构建和部署他们的应用程序。
API 清理与优化
Vite 5.0 聚焦于清理 API,移除了一些已经过时的特性,同时对一些长期存在的问题进行了修复。一个例子是 define
的更新,现在使用了正确的 AST 替代,而不再依赖于正则表达式。这使得开发者在使用这些功能时更加可靠和稳定。
未来的规划
在 ViteConf 中,Evan You揭示了 Vite 的长期计划,即开发 Rolldown,这是一个基于 Rust 的 Rollup,具有兼容的API。一旦准备就绪,Vite 将使用它来处理 Rollup 和 esbuild 的任务。这将意味着构建性能的提升,以及在将 Vite 的性能敏感部分移至 Rust 之后,开发性能的大幅降低。Rolldown目前还处于早期阶段,团队计划在年底之前开源代码库。
主要变化
Vite 5.0 除了引入了新的构建工具外,还对 API 进行了一些变化,以更好地适应未来的发展。其中一些变化包括:
- Vite 现在使用 Rollup 4 进行构建,带来了显著的性能提升。
- 废弃了 CJS Node API。
- 重新设计
define
和import.meta.env.*
替换策略。 - SSR 外部化模块的值现在与生产环境一致。
worker.plugins
现在是一个函数。- 允许路径包含
.
时回退到index.html
。 - 调整了 dev 和预览 HTML 服务行为。
- 现在默认在
.vite
目录中生成清单文件。
迁移至 Vite 5.0
对于大多数项目来说,升级到 Vite 5.0 应该是直截了当的。然而,我们建议在升级之前仔细查阅详细的迁移指南,以确保平稳过渡。Vite 生态系统的持续演进离不开生态系统 CI的支持,这使我们在进行较大的更改时能够避免引入回归问题。
性能优化和新特性
除了构建性能的提升外,Vite 5.0 还引入了一些性能优化和新特性。其中一个值得关注的特性是 server.warmup,这是一个旨在提高启动时间的新功能。它允许您在服务器启动时预先转换一系列模块,从而加速应用程序的启动。当使用 --open
或 server.open
时,Vite 还会自动预热您的应用程序入口或提供的打开链接。
最后
Vite 5.0 的发布标志着 Vite 生态系统的又一次演进。作为开发者,我们可以期待更快的构建速度、更清晰的 API 以及更多实用的特性。升级到 Vite 5.0,让我们一同迎接前端开发的新时代!