VUE中.sync的使用
时间: 2024-05-16 14:14:23 浏览: 66
Vue使用.sync 实现父子组件的双向绑定数据问题
在Vue中,.sync是一个语法糖,它可以让父组件与子组件之间进行双向绑定。我们可以通过在子组件中使用$emit()方法来更新父组件中的数据。
使用.sync的语法如下:
```html
<child-component :foo.sync="bar"></child-component>
```
上面的代码中,子组件中的foo属性与父组件中的bar属性进行了双向绑定。当子组件中的foo属性发生变化时,会通过$emit()方法向父组件发送一个update:foo事件,父组件会响应这个事件,并将最新的值更新到bar属性中。
在子组件中使用$emit()方法更新父组件中的数据:
```js
this.$emit('update:foo', newValue);
```
在父组件中监听update:foo事件,并更新bar属性:
```html
<child-component :foo.sync="bar"></child-component>
```
```js
Vue.component('child-component', {
props: ['foo'],
template: '<div>{{ foo }}</div>',
});
new Vue({
el: '#app',
data: {
bar: 'Hello World',
},
});
```
上面的代码中,父组件中的bar属性初始值为'Hello World',它与子组件中的foo属性进行了双向绑定。当子组件中的foo属性发生变化时,会触发update:foo事件,父组件会响应这个事件,并将最新的值更新到bar属性中。
阅读全文