1.vue3中v-model语法糖父子传值,场景:点击父组件按钮可以控制子是否展示,点击子组件按钮把值传给父,控制子展示关闭
父:
//v-model="show"等于:modelValue="show" @update:modelValue="show=$vent"
<el-dialog v-model="show" />
<button @click="show=true"> </button> //场景点击按钮出现子组件
const show=ref(false)
子:<p v-if=“modelValue”>
//("update:modelValue",modelValue)自定义事件,传的值
<button @click=("update:modelValue",modelValue)>确定</button>
</p>
defineProps=<{
modelValue:boolean //modelValue固定
}>()
defineEimt=<{
//定义父组件自定义事件接子组件传的值,实际传给v-model
(e:"update:modelValue",data:boolean):void //update:modelValue固定
}>()
2.v-model语法糖更改自定义事件名
父:<el-dialog v-model:aa="show" />
<button @click="show=true"> </button>
const show=ref(false)
子:
<p v-if=“modelValue”>
//("update:modelValue",modelValue)自定义事件,传的值
<button @click=("update:aa",!show)>确定</button>
</p>
defineProps=<{
show:boolean
}>()
defineEimt=<{
(e:"update:aa",data:boolean):void
}>()