跳到内容

Vite 6.0 发布!

2024 年 11 月 26 日

Vite 6 Announcement Cover Image

今天,我们正在 Vite 的故事中迈出又一大步。Vite 团队贡献者和生态系统合作伙伴很高兴地宣布 Vite 6 的发布。

这是充满事件的一年。Vite 的采用率持续增长,自一年前 Vite 5 发布以来,每周 npm 下载量从 750 万跃升至 1700 万。Vitest不仅越来越受到用户的青睐,而且也开始形成自己的生态系统。例如,Storybook 具有由 Vitest 提供支持的新测试功能。

新的框架也加入了 Vite 生态系统,包括TanStack StartOneEmber等。Web 框架正在以越来越快的速度进行创新。您可以查看人们在 AstroNuxtSvelteKitSolid StartQwik CityRedwoodJSReact Router 所做的改进,以及等等。

Vite 被 OpenAI、Google、Apple、Microsoft、NASA、Shopify、Cloudflare、GitLab、Reddit、Linear 等许多公司使用。两个月前,我们开始了一个使用 Vite 的公司列表。我们很高兴看到许多开发人员向我们发送 PR,将他们的公司添加到列表中。很难相信我们共同构建的生态系统自 Vite 迈出第一步以来已经发展了多少。

Vite weekly npm downloads

加速 Vite 生态系统

上个月,社区聚集在一起参加由StackBlitz再次主办的第三届ViteConf。这是规模最大的 Vite 会议,生态系统中各种构建者都有广泛的代表性。在其他公告中,Evan You 宣布了VoidZero,这是一家致力于为 JavaScript 生态系统构建开源、高性能和统一的开发工具链的公司。VoidZero 是 RolldownOxc 的幕后推手,他们的团队正在取得重大进展,使它们迅速准备好被 Vite 采用。观看 Evan 的主题演讲,了解有关 Vite 由 Rust 提供支持的未来的下一步措施。

Stackblitz 推出了bolt.new,这是一个 Remix 应用程序,它结合了 Claude 和 WebContainers,让您可以提示、编辑、运行和部署全栈应用程序。Nate Weiner 宣布了 One,这是一个新的由 Vite 提供支持的 React 框架,适用于 Web 和原生。Storybook 展示了他们最新的 Vitest 驱动的测试功能。还有更多。我们鼓励您观看所有 43 个讲座。演讲者付出了巨大的努力与我们分享每个项目的情况。

Vite 还获得了一个全新的着陆页和一个干净的域名。您应该更新您的 URL 以指向新的 vite.dev 域名。新的设计和实施由 VoidZero 完成,与制作其网站的人员相同。向 Vicente RodriguezSimon Le Marchant 致敬。

下一个 Vite 主要版本就在这里

Vite 6 是自 Vite 2 以来最重要的主要版本。我们渴望与生态系统合作,通过新的 API 以及一如既往的更完善的基础来扩展我们的共同领域。

快速链接

如果您是 Vite 的新手,我们建议首先阅读入门功能指南。

我们要感谢超过 1K 对 Vite Core 的贡献者 以及 Vite 插件、集成、工具和翻译的维护者和贡献者,他们帮助我们制作了这个新的主要版本。我们邀请您参与进来,帮助我们为整个生态系统改进 Vite。在我们的贡献指南中了解更多信息。

要开始使用,我们建议帮助问题分类审查 PR,基于开放问题发送失败测试 PR,并在讨论区和 Vite Land 的帮助论坛中支持他人。如果您想与我们交谈,请加入我们的Discord 社区,并在#contributing 频道上打个招呼。

有关 Vite 生态系统和 Vite Core 的最新消息,请关注我们的BlueskyXMastodon

Vite 6 入门

您可以使用 pnpm create vite 快速搭建一个具有您首选框架的 Vite 应用程序,或者使用 vite.new 在线使用 Vite 6。您也可以运行 pnpm create vite-extra 来访问来自其他框架和运行时的模板(Solid、Deno、SSR 和库启动器)。当您在 Others 选项下运行 create vite 时,也可以使用 create vite-extra 模板。

Vite 启动器模板旨在用作使用不同框架测试 Vite 的游乐场。在构建您的下一个项目时,您应该联系每个框架推荐的启动器。create vite 还提供了一些框架的设置正确启动器的快捷方式,例如 create-vueNuxt 3SvelteKitRemixAnalogAngular

Node.js 支持

Vite 6 支持 Node.js 18、20 和 22+,类似于 Vite 5。已删除 Node.js 21 支持。Vite 在较早版本的 Node.js EOL 后放弃对其的支持。Node.js 18 EOL 将于 2025 年 4 月底到期,之后我们可能会发布一个新的主要版本来提升所需的 Node.js 版本。

实验性环境 API

Vite 通过新的环境 API 变得更加灵活。这些新的 API 将允许框架作者提供更接近生产的开发体验,并允许生态系统共享新的构建块。如果您正在构建 SPA,则没有任何变化;当您将 Vite 与单个客户端环境一起使用时,一切都像以前一样工作。即使对于自定义 SSR 应用程序,Vite 6 也向后兼容。环境 API 的主要目标受众是框架作者。

对于好奇的最终用户,Sapphi 编写了一个很棒的 环境 API 介绍指南。这是一个很好的起点,可以了解为什么我们试图使 Vite 更加灵活。

如果您是框架作者或 Vite 插件维护者,并且想要利用新的 API,您可以在 环境 API 指南 中了解更多信息。

我们要感谢所有参与定义和实施新 API 的人。这个故事始于 Vite 2 采用 Rich HarrisSvelteKit 团队首创的非捆绑 SSR 开发方案。Vite 的 SSR 转换随后解锁了 Anthony FuPooya Parsa 来创建 vite-node 并改进 Nuxt 的 Dev SSR 故事。Anthony 随后使用 vite-node 为 Vitest 提供支持,而 Vladimir Sheremet 作为他维护 Vitest 工作的一部分,不断对其进行改进。在 2023 年初,Vladimir 开始努力将 vite-node 上游到 Vite Core,我们一年后在 Vite 5.1 中将其作为运行时 API 发布。来自生态系统合作伙伴的反馈(特别感谢 Cloudflare 团队)促使我们对 Vite 的环境进行了更雄心勃勃的重新设计。您可以在 Patak 的 ViteConf 24 演讲 中了解更多关于这个故事的信息。

Vite 团队的每个人都参与了定义新的 API,该 API 是在生态系统中许多项目的反馈的共同设计下进行的。感谢所有参与者!我们鼓励您参与进来,如果您正在 Vite 之上构建框架、插件或工具。新的 API 是实验性的。我们将与生态系统合作审查新 API 的使用方式,并在下一个主要版本中使其稳定。如果您想提出问题或提供反馈,可以在此处打开 GitHub 讨论

主要变化

还有一个新的 重大更改 页面,其中列出了 Vite 中所有计划的、正在考虑的和过去的更改。

迁移到 Vite 6

对于大多数项目,更新到 Vite 6 应该很简单,但我们建议在升级之前查看详细的迁移指南

完整的更改列表位于 Vite 6 更新日志

致谢

Vite 6 是我们的贡献者社区、下游维护者、插件作者和 Vite 团队 长期工作的结果。我们感谢赞助 Vite 开发的个人和公司。Vite 由 VoidZeroStackBlitzNuxt LabsAstro 合作提供。感谢 Vite 的 GitHub SponsorsVite 的 Open Collective 上的赞助商。

在 MIT 许可证下发布。(083ff36d)