编程 Vue 3.6.0-rc.1 进入 RC:Vapor Mode 功能集完成,编译期不再生成 VNode

2026-09-19 21:02:11

Vue 3.6.0-rc.1 进入 RC:Vapor Mode 功能集完成,编译期不再生成 VNode

Vue 3.6.0-rc.1 于 2026-07-18 发布,进入 RC 阶段,Vapor Mode 的功能集已经完成。仓库:github.com/vuejs/core,release tag v3.6.0-rc.1

Vapor Mode 做什么

Vapor Mode 是 SFC 的可选编译模式:编译器直接输出命令式 DOM 操作,不生成 VNode,也就不需要 diff。

官方称在第三方基准中,Vapor Mode 与 Solid、Svelte 5 处于同一水平。第三方分析给出的数据:

  • 挂载 10 万组件约 300ms → 100ms
  • 复杂重渲染峰值内存下降约 22%
  • 纯 Vapor 应用包体缩小 20%–50%

采用方式与限制

Vapor Mode 100% 可选,可以逐组件采用,与标准 Vue 组件混用。

开启方式:

  • ``
  • ``(等价于 setup)
  • ``

纯 Vapor 应用使用 createVaporApp()。在 VDOM 应用中嵌入 Vapor 组件需要安装 vaporInteropPlugin

限制条件:

  • 要求 Composition API,Options API 不支持
  • 不支持 getCurrentInstance()v-memo、元素生命周期事件、全局属性
  • Suspense 在纯 Vapor 模式下不支持(可以把 Vapor 组件放进 VDOM 的 Suspense 中)

已知识别问题:在 VDOM 组件内不能用 slots.default() 渲染 vapor slot,需要用 renderSlot

响应式内核重写

3.6 还把 @vue/reactivity 基于 alien-signals 重写,提升响应式性能与内存表现。

RC 阶段建议仅在 staging 环境验证,不建议上生产。

复制全文 生成海报 Vue Vapor Mode 前端 3.6

推荐文章

程序员茄子在线接单