vue3子组件向父组件传递数据
时间: 2023-11-21 17:06:59 浏览: 85
vue子组件改变父组件传递的prop值通过sync实现数据双向绑定(DEMO)
Vue3中,子组件向父组件传递数据可以通过两种方式实现:
1. 父组件传递处理方法给子组件,子组件调用该方法并传递数据给父组件。具体实现可以参考以下代码:
```html
<!-- 父组件 -->
<template>
<child-component :handleData="handleChildData"></child-component>
</template>
<script>
export default {
methods: {
handleChildData(data) {
// 处理子组件传递过来的数据
}
}
}
</script>
<!-- 子组件 -->
<template>
<button @click="handleClick">传递数据给父组件</button>
</template>
<script>
export default {
props: ['handleData'],
methods: {
handleClick() {
const data = '子组件传递给父组件的数据';
this.handleData(data);
}
}
}
</script>
```
2. 子组件通过`$emit`方法触发父组件的事件,并传递数据给父组件。具体实现可以参考以下代码:
```html
<!-- 父组件 -->
<template>
<child-component @child-data="handleChildData"></child-component>
</template>
<script>
export default {
methods: {
handleChildData(data) {
// 处理子组件传递过来的数据
}
}
}
</script>
<!-- 子组件 -->
<template>
<button @click="handleClick">传递数据给父组件</button>
</template>
<script>
export default {
methods: {
handleClick() {
const data = '子组件传递给父组件的数据';
this.$emit('child-data', data);
}
}
}
</script>
```
阅读全文