Vue 中的 sync 修饰符用于在父组件和子组件之间实现双向数据绑定。它通过生成一个 v-model 指令,将子组件的 prop 与父组件的 prop 绑定在一起,从而实现数据同步。用法如下:1. 在子组件中使用 v-bind:prop.sync="parentProp",其中 prop 是子组件的 prop 名称,parentProp 是父组件绑定的 prop 名称。

Vue 中 sync 作用
在 Vue 中,sync 修饰符是一种特殊的语法糖,它允许在父组件和子组件之间进行双向数据绑定。简单来说,使用 sync 修饰符,子组件中的数据可以反映到父组件中,而父组件中的数据也可以反映到子组件中。
工作原理
当在子组件上使用 sync 修饰符时,Vue 会自动生成一个 v-model 指令,该指令将子组件的 prop 与父组件的 prop 绑定在一起。这意味着:
立即学习“前端免费学习笔记(深入)”;
- 当子组件中
prop的值发生改变时,父组件中绑定的prop的值也会同步更新。 - 当父组件中绑定的
prop的值发生改变时,子组件中prop的值也会同步更新。
用法
要使用 sync 修饰符,可以在子组件中使用以下语法:
其中:
-
child-component是子组件的名称。 -
prop是子组件的prop名称。 -
parentProp是父组件中绑定的prop名称。
示例
以下示例展示了如何使用 sync 修饰符实现父组件和子组件之间的双向数据绑定:
// 父组件
Vue.component('parent-component', {
template: ` `,
data() {
return {
count: 0
}
}
});
// 子组件
Vue.component('child-component', {
template: `{{ count }}`,
props: ['count'],
data() {
return {
count: this.count
}
}
});在该示例中,parent-component 和 child-component 之间的 count 值可以双向绑定。当父组件中 count 的值发生改变时,子组件中的 count 值也会更新,反之亦然。










