Vite 8 即将发布!全面切换 Rolldown

490 阅读2分钟

尤雨溪最近宣布:Vite 8 将完全由 Rolldown 驱动,Beta 即将发布

image-20250929081729090.png

Rolldown 是一个用 Rust 开发的现代打包器,目标是取代 Vite 现有的 Rollup + esbuild 组合。它不仅保持了 Rollup 插件生态的兼容性,还凭借 Rust 的性能优势带来了数量级的加速。


性能

在社区分享的测试中,很多真实项目的构建速度出现了数量级的提升。例如:

  • PayFit 前端工程师分享,他所在的项目从 2 分钟 的构建时间降到了 8 秒,提速接近 15 倍。尤雨溪同时也转发了该分享。

image-20250929082417626.png

  • 在 GitHub 的 rolldown-vite-perf-wins 仓库里,已经有多个团队上传了他们的“性能胜利”案例。数据普遍显示 3–16 倍 的提速,同时内存占用也大幅下降。

image-20250929082640978.png


新特性

除了性能之外,Vite 8 + Rolldown 还带来了许多新的变化和能力:

  1. 统一的打包器架构
    过去 Vite 在开发时依赖 esbuild,在生产时依赖 Rollup。Rolldown 的引入能统一开发与构建阶段的逻辑,减少工具之间的割裂,降低复杂性。

  2. Importmaps 集成
    通过支持浏览器原生的 importmaps,Vite 8 简化第三方库的导入,减少捆绑复杂性,提升运行时性能。

  3. 模块联邦支持
    Vite 8 将通过 Rolldown 实现模块联邦,动态加载远程模块,类似 Webpack 的 Module Federation,但性能更高,适合微前端架构。

  4. Full Bundle 模式
    一种新的“全捆绑模式”,能让开发与生产的表现更接近,优化生产构建的模块合并和树摇效率,同时进一步减少模块请求开销。


如何试用

package.json 中将 vite 指向 rolldown-vite

{
  "dependencies": {
    "vite": "npm:rolldown-vite@latest"
  }
}

详细指南可参考 Vite 官网的 试用 Rolldown 教程

相关链接