
关于vue3使用prop传动态参数时父子数据不同步更新问题
vue
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
项目地址:https://gitcode.com/gh_mirrors/vu/vue

·
子:
<template>
<div>
<h3>子组件</h3>
<input :value="modelValue" @input="$emit('update:modelValue', $event.target.value)">
</div>
</template>
<script setup>
import { defineProps, defineEmits } from 'vue'
const props = defineProps({
modelValue: {
type: String,
default: ''
}
})
const emits = defineEmits(['update:modelValue'])
</script>
父:
<template>
<div>
<h3>父组件</h3>
<ChildComponent v-model:modelValue="message" />
<p>子组件输入的内容:{{ message }}</p>
</div>
</template>
<script setup>
import ChildComponent from './ChildComponent.vue'
let message = ''
</script>
原文地址:vue3中利用v-model实现父子组件之间的数据同步_vue3父子组件传值实时更新-CSDN博客
使用注意(动态绑定失效的例子):
父组件中传递的参数在子组件中通过重新创建参数接收传递的参数,再绑定到页面。将导致数据无法实现动态绑定。
<template>
<div>
<h3>子组件</h3>
<input :value="propModelValue" @input="$emit('update:modelValue', $event.target.value)">
</div>
</template>
<script setup>
import { defineProps, defineEmits,ref } from 'vue'
const props = defineProps({
modelValue: {
type: String,
default: ''
}
})
const propModelValue=ref(prop.modelValue)
const emits = defineEmits(['update:modelValue'])
</script>




vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:6 个月前 )
9e887079
[skip ci] 5 个月前
73486cb5
* chore: fix link broken
Signed-off-by: snoppy <michaleli@foxmail.com>
* Update packages/template-compiler/README.md [skip ci]
---------
Signed-off-by: snoppy <michaleli@foxmail.com>
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 8 个月前
更多推荐
所有评论(0)