vue2 .sync
时间: 2024-01-23 11:15:03 浏览: 77
vue2
在Vue.js 2中,.sync是一个修饰符,用于实现父子组件之间的双向绑定。它允许子组件修改父组件的数据,并且在父组件中也能够接收到子组件修改后的值。
下面是一个使用.sync的示例:
```html
<!-- 父组件 -->
<template>
<div>
<p>父组件的值:{{ parentValue }}</p>
<ChildComponent :childValue.sync="parentValue" />
</div>
</template>
<script>
import ChildComponent from './ChildComponent.vue';
export default {
data() {
return {
parentValue: 'Hello',
};
},
components: {
ChildComponent,
},
};
</script>
```
```html
<!-- 子组件 ChildComponent.vue -->
<template>
<div>
<p>子组件的值:{{ childValue }}</p>
<button @click="updateParentValue">修改父组件的值</button>
</div>
</template>
<script>
export default {
props: {
childValue: {
type: String,
required: true,
},
},
methods: {
updateParentValue() {
this.$emit('update:childValue', 'World');
},
},
};
</script>
```
在上面的示例中,父组件通过将parentValue作为prop传递给子组件,并使用.sync修饰符实现双向绑定。子组件可以通过调用`this.$emit('update:childValue', value)`来修改父组件的值。
然而,在Vue.js 3中,.sync修饰符已被移除。取而代之的是使用v-model来实现双向绑定。你可以将父组件的值通过v-model传递给子组件,并在子组件中使用`$emit('update:modelValue', value)`来修改父组件的值。
阅读全文