v-model在子组件身上的使用
时间: 2024-06-19 19:03:52 浏览: 78
vue中的v-model原理,与组件自定义v-model详解
v-model 在子组件身上的使用通常需要以下步骤:
1. 在父组件中使用子组件时,需要在子组件标签上使用 v-model 指令,并将父组件中的数据作为 v-model 的绑定值,例如:
```
<template>
<div>
<child-component v-model="message"></child-component>
</div>
</template>
<script>
import ChildComponent from './ChildComponent.vue'
export default {
components: {
ChildComponent
},
data() {
return {
message: ''
}
}
}
</script>
```
2. 在子组件中需要定义一个名为 value 的 prop 属性,并且在子组件内部使用该 prop 属性作为数据绑定的源头,例如:
```
<template>
<div>
<input type="text" :value="value" @input="$emit('input', $event.target.value)">
</div>
</template>
<script>
export default {
props: {
value: {
type: String,
default: ''
}
}
}
</script>
```
这样做的效果是:在父组件中通过 v-model 双向绑定了一个名为 message 的数据,然后这个 message 数据被传递给了子组件,子组件将其作为 value prop 属性的值,在子组件内部通过 $emit('input', $event.target.value) 将 input 事件传递出去,从而实现了父子组件之间的双向数据绑定。
阅读全文