
反反复复 一个人最好的状态还是孤独
“不再用 esbuild 开发 + Rollup 构建的‘双系统切换’,而是启用统一引擎 Rolldown(Rust 编写)——一套内核,全链路提速。”
这不仅是性能跃升,更是架构范式升级。

我们知道,Vite 1.x~7.x 的经典架构长这样:
开发阶段: Vite + esbuild (⚡️ 快!)
生产构建: Vite + Rollup (📦 稳!)✅ 优点明显:
❌ 但隐患深埋:
import.meta.env 没问题,一构建就 undefined就像一辆车:油门踩下去是电动车(安静迅猛),松开油门切回燃油机(轰鸣可靠)——可你总得在换挡时抖一下 🚗💨
维度 | Rollup(JS) | esbuild(Go) | Rolldown(Rust) |
|---|---|---|---|
语言 | JavaScript | Go | Rust ✅ |
性能 | 基准线 | ≈ 10x Rollup | ≈ esbuild,10–30x Rollup ✅ |
插件兼容性 | Rollup 插件 | esbuild 插件 | ✅ 开箱兼容 Rollup/Vite 插件 |
生态集成 | — | — | 与 Oxc(编译器)深度协同 ✅ |
功能扩展 | 慢(JS 单线程) | 快但封闭 | 可扩展性强,支持模块联邦 / 完整打包模式 ✅ |
import.meta.env、?raw、?url 行为 100% 一致官方实测案例:
公司 | 旧构建时间 | Vite 8 + Rolldown | 降幅 |
|---|---|---|---|
Linear | 46s | 6s | ↓ 87% |
Beehiiv | 28s | 10s | ↓ 64% |
Mercedes-Benz.io | ~30s | ~19s | ↓ 38% |
💡 实测我手头的中型 React 项目(120 个模块):
vite build—— 42.3s → 5.8s ✅ 而且 CPU 占用更平稳,风扇不再起飞 🌀
Rolldown 并非孤军奋战,它背后站着 Oxc(Ox 编译器)——VoidZero 团队打造的下一代 JS/TS 工具链全家桶:
emitDecoratorMetadata(Vite 8 内置✅)✅ 推荐策略:渐进式迁移(尤其大型项目)
npminstall vite@8.0.0-beta.0 -D
# 或
yarnadd-D vite@8.0.0-beta.0
pnpmadd-D vite@8.0.0-beta.0⚠️ 注意:若你显式配置过
build.rollupOptions或esbuild,需参考迁移指南微调。
rolldown-vite(技术预览包):```bash npm install rolldown-vite@latest -D ```vite@8.0.0-beta.0,还原命令。✅ 优势:问题隔离清晰,不影响现有
vite稳定版。
用 overrides/resolutions 强制提升 Vite 版本:
// package.json
{
"pnpm":{
"overrides":{
"vite":"8.0.0-beta.0"
}
},
// npm/yarn 用 "resolutions" 或 "overrides"
}然后重装依赖 → 启动!🎉
功能 | 说明 | 是否默认启用 |
|---|---|---|
resolve.tsconfigPaths: true | 内置支持 tsconfig.json 的 paths 映射 | ❌ 需手动开启(略影响性能) |
自动 emitDecoratorMetadata | 装饰器元数据生成,告别 @babel/plugin-transform-typescript 配置 | ✅ 自动识别 tsconfig 并启用 |
模块级持久缓存(实验) | 大型项目二次构建更快 | 🧪 实验中 |
完整打包模式(开发服务器) | 启动更快 + 重载更快(实测 ×3 启动速度) | 🚧 即将推出 |
@vitejs/plugin-react、unplugin-vue-components)已兼容build.rollupOptions.plugins 中的插件需测试external / output.globals 行为基本一致,但语义更严格dist/ 目录项目 | 角色 | 语言 | 贡献者 |
|---|---|---|---|
Vite | 开发服务器 / 构建协调者 | TS | Vue/Vite 团队 |
Rolldown | 打包器(替代 Rollup) | Rust | VoidZero 团队 |
Oxc | 编译器全家桶(Parser/Transform/Minifier) | Rust | VoidZero 团队 |
Vite 8 的 Beta 发布,标志着前端工程化进入 “Rust 赋能、全链路统一” 的新纪元。
我们曾为“开发快 vs 构建稳”的矛盾妥协多年, 今天,Vite 8 给出了终极答案: 既要,也要,全都要。