Vue3 子组件修改父组件传过来的值

发布时间 2023-10-26 15:23:42作者: 糯米白白

Vue3 子组件修改父组件传过来的值

1、在父组件中,找到引用的子组件,在引用中加入v-model

例如:子组件是demo,需要穿的值为num

这个有个温馨提示,(v-model +冒号+需要穿的值)这个v-model可以写多个

<demo v-model:num="num"></demo>

//例如 可以写多个  需要修改多个传入的值
<demo v-model:num="num" v-model:arr="arr"></demo>

2、在子组件中引用

注意:在vue3中 defineProps 需要引用一下 import { defineProps } from 'vue'

const prop=defineProps({
    num: {
        type: Number,
        default:0
    }
})

3、定义一个emit来修改这个值

defineEmits也需要引入一下,一定要加update,冒号后面就是传过来的值的那个字段

const emit= defineEmits(['update:num'])

4、使用方法

直接在你需要的事件里,比如:click修改

const click=()=>{

   emit('update:num',123) //123  代表是将num值修改为123

}