vue3 父子组件双向绑定

父组件 ParentComponent.vue

<!-- ParentComponent.vue -->
<template>
  <div>
    子组件输入的数据
    <p>Parent Value: {{ parentValue }}</p>
    父输入框
    <input v-model="parentValue">
    <CustomInput v-model="parentValue" />
  </div>
</template>

<script setup>
import CustomInput from './CustomInput.vue';
import { ref } from 'vue';

const parentValue = ref('');
</script>

子组件

<!-- CustomInput.vue -->
<template>
  子组件
  <input :value="modelValue" @input="updateValue($event.target.value)" />
</template>

<script setup>
import { ref, defineProps, defineEmits } from 'vue';

const props = defineProps({
  modelValue: {
    type: String,
    required: true,
  },
});

const emit = defineEmits();

const updateValue = (newValue) => {
  emit('update:modelValue', newValue);
};
</script>

 

效果

 

 

posted @ 2024-07-05 11:17  林财钦  阅读(1)  评论(0编辑  收藏  举报