在vue3中,父组件的btn事件如何在子组件上触发
时间: 2024-09-10 18:21:24 浏览: 41
Vue触发input选取文件点击事件操作
在Vue3中,父组件通过props将事件传给子组件,并不是直接在子组件上触发父组件的事件。父组件可以定义一个按钮点击事件,并将这个事件的处理函数作为prop传递给子组件。然后,在子组件内部,当满足某些条件时,可以调用这个事件传递过来的函数。
例如:
```html
<!-- 父组件 -->
<template>
<button @click="handleButtonClick">点击</button>
<child-component :on-click="handleButtonClick" />
</template>
<script>
export default {
methods: {
handleButtonClick() {
// 父组件的业务逻辑
}
}
}
</script>
```
```html
<!-- 子组件 child-component.vue -->
<template>
<!-- 当需要触发父组件的事件时 -->
<button @click="$emit('onClick')">子组件内的按钮</button>
</template>
<script>
export default {
props: {
onClick: { type: Function, required: true } // 接收并绑定父组件的事件
},
methods: {}
}
</script>
```
当你点击子组件内的按钮时,它会通过`$emit`方法触发名为`onClick`的自定义事件,这会让父组件接收到该事件并执行相应的处理函数。
阅读全文