uni-app 子组件v-model的双向绑定

文章探讨了Vue框架在2.0和3.0版本中,父子组件间使用v-model进行双向数据绑定的不同实现方式。在Vue2.0中,v-model是:value和@input的语法糖,而在Vue3.0中,更新为`update:modelValue`事件。子组件通过修改props并触发相应事件来更新父组件的状态。
摘要由CSDN通过智能技术生成
vue2.0
父组件
   <!-- v-model实际上就是:value和@input的语法糖 -->
   <!-- 双向绑定多个属性的时候可以使用.sync关键字 -->
<template>
        <drag-image v-model="imgArr"></drag-image>
</template>


子组件
<script>
emits:['input']
 props: {
     <!-- //这里的value就是 imgArr -->
      value: {  
      type: Array | Object,
      default: function () {
        return [];
      },
    },
}

methods:{
    <!-- 改变imgArr数据 -->
 setImgArr(){
    this.$emit('input', result);
}
}
</script>
vue3.0
父组件
<template>
        <drag-image v-model="imgArr"></drag-image>
</template>


子组件
<script>
 emits: ['update:modelValue'],
 props: {
      <!-- //这里的value就是 modelValue -->
      modelValue: {  
      type: Array | Object,
      default: function () {
        return [];
      },
    },
}

methods:{
    <!-- 改变imgArr数据 -->
 setImgArr(){
      this.$emit("update:age", e.target.value);
}
}
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值