跳转到内容

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 上的赞助商。