vue 3 中 .sync 修饰符已被移除,由 v-model 参数化机制替代:默认用 modelvalue + update:modelvalue,自定义则用 v-model:title 等,需在 defineprops 和 defineemits 中显式声明。

Vue 3 中 .sync 修饰符已被彻底移除,不是失效,而是被更清晰、更灵活的 v-model 参数化机制取代。在 <script setup></script> 中,你不能写 :title.sync,必须改用 v-model:title 或默认 v-model,并配合子组件显式声明 prop 和事件。
默认 v-model 绑定:用 modelValue + update:modelValue
这是最常用也最接近 Vue 2 .sync 逻辑的写法,适合单个状态控制(比如弹窗显隐):
- 父组件直接写
<mydialog v-model="dialogVisible"></mydialog> - 子组件接收
modelValueprop,并声明update:modelValue事件 - 触发更新时调用
emit('update:modelValue', newValue)
自定义 v-model 名称:替代多个 .sync
Vue 2 中常写 :title.sync="t" :content.sync="c",Vue 3 改为多个独立 v-model::

