可以通过在子组件中使用 $emit 方法来触发 App.vue 中的方法。具体步骤如下:
- 在 App.vue 中定义一个方法
<script>
export default {
methods: {
appMethod() {
console.log('调用了 App.vue 中的方法')
}
}
}
</script>
- 在子组件中使用
$emit方法触发该方法
<script>
export default {
methods: {
callAppMethod() {
this.$emit('app-method')
}
}
}
</script>
- 在父组件中监听该事件,并调用相应的方法
<template>
<div>
<child-component @app-method="appMethod"></child-component>
</div>
</template>
<script>
import ChildComponent from './ChildComponent.vue'
export default {
components: { ChildComponent },
methods: {
appMethod() {
console.log('父组件调用了 App.vue 中的方法')
}
}
}
</script>
这样,当子组件中调用 callAppMethod 方法时,就会触发 app-method 事件,然后在父组件中监听该事件并调用 appMethod 方法,从而实现调用 App.vue 中的方法。