Vite 8 发布,告别双引擎时代
Vite 8 在 2026 年 3 月正式发布了。这次升级和之前不太一样,它把整个底层打包工具都换了。很多人说这是“双引擎时代的终结”,下面我帮你把这背后的变化说清楚。
一、以前的 Vite 为什么叫“双引擎”?
从 Vite 2 到 Vite 5,开发环境和生产环境用的是两套不同的工具:
开发环境用 esbuild
用 Go 语言写的,速度极快
按需编译,项目启动很快
生产打包用 Rollup
插件生态很成熟
Tree-shaking 能力强
打包结果可控
所以以前的 Vite,开发的时候跑 esbuild,打包的时候切到 Rollup。这就是“双引擎”这个名字的由来。
二、双引擎有什么问题?
这套方案虽然好用,但慢慢也暴露出一些问题:
插件不通用:开发环境能用的插件,打包时不一定能跑
行为不一致:本地调试正常,一打包就报错,很多人都遇到过
调试麻烦:需要理解两套工具的配置和逻辑
心智负担大:开发者得同时熟悉 esbuild 和 Rollup
这些问题不是 bug,而是两套引擎共存本身就很难完全对齐。
三、Vite 8 带来了什么变化?
Vite 8 的核心变化,就是引入了一个叫 Rolldown 的新打包工具。
Rolldown 有几个特点:
用 Rust 编写,性能和 esbuild 差不多
兼容 Rollup 的插件 API
目标是同时覆盖开发和生产两个场景
也就是说,以后不用再区分“开发用 A、打包用 B”了,一个 Rolldown 全搞定。
四、这对开发者意味着什么?
好处很明显:
第一,开发和生产行为统一了。之前那种“本地跑得通,上线就挂”的情况会少很多。
第二,插件写一次就行,不用再考虑 dev 和 build 的差异。
第三,构建速度提升很大。官方数据显示,Rolldown 比 Rollup 快 10 到 30 倍。一些公司实测的结果也很夸张:Linear 从 46 秒降到 6 秒,Beehiiv 减少了 64% 的构建时间。
需要注意的地方:
部分老插件可能不兼容新引擎,早期版本也可能有些 bug。建议关注插件生态的迁移进度,等稳定了再升级也不迟。
五、esbuild 和 Rollup 会消失吗?
不会马上消失。
esbuild 还会用在依赖预构建等场景,但不再是核心引擎。Rollup 会逐渐被 Rolldown 替代,生态也会慢慢迁移过来。这是一个渐进的过程,不用太着急。
六、升级建议
官方提供了两种升级方式:
直接升级:适合个人项目或小项目,改一下 package.json 里的版本号就行。
渐进迁移:先在 Vite 7 上换成 rolldown-vite 包,测试没问题再升到 Vite 8。大项目建议用这种方式,风险更低。
另外要注意,Vite 8 要求 Node.js 20.19+ 或 22.12+。
总结
Vite 8 本质上在做一件事:从一个拼装工具,进化成一个统一的编译平台。
“双引擎时代结束”,说白了就是从 esbuild + Rollup 变成 Rolldown(统一一切)。
如果你现在正在用 Vite,可以找个项目试试升级。构建更快、插件更少坑、行为更一致,这些改进值得你花点时间去体验一下。
本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!