vue3 怎么调用父组件的方法
时间: 2023-09-24 17:13:06 浏览: 29
在Vue.js 3中,要调用父组件的方法,可以通过使用自定义事件和`$emit`方法来实现。以下是一个示例代码:
在父组件中:
```javascript
<template>
<div>
父组件
<child @fatherMethod="parentFun"></child>
</div>
</template>
<script>
import child from './child.vue'
export default {
name: "parent",
components: {
child,
},
data() {
return {
},
},
methods: {
parentFun(cdata) {
console.log(cdata, "cdata");
// 在这里实现父组件的方法逻辑
},
},
};
</script>
<style lang='less' scoped>
</style>
```
在子组件中:
```javascript
<template>
<div>
<button @click="childFun">子组件按钮</button>
</div>
</template>
<script>
export default {
name: "child",
components: {},
data() {
return {
};
},
methods: {
childFun() {
this.$emit("fatherMethod", "子组件数据");
// 通过$emit触发自定义事件传递数据给父组件
},
},
};
</script>
<style lang='less' scoped>
</style>
```
在父组件中,通过使用`@fatherMethod="parentFun"`将父组件中的方法`parentFun`传递给子组件,并在子组件中通过`this.$emit("fatherMethod", "子组件数据")`触发自定义事件,将数据传递给父组件。父组件可以在`parentFun`方法中实现自己的逻辑。这样就实现了调用父组件的方法。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [Vue子组件怎么调用父组件的方法 Vue子组件调用父组件函数的三种方法](https://blog.csdn.net/qq_45466204/article/details/126232074)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* [[vue3] 子组件调用父组件的多种方法](https://blog.csdn.net/wyy7293/article/details/123918547)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]