vue3 let $emit
时间: 2023-10-30 09:01:30 浏览: 100
vue&jeecg.md
在 Vue 3 中,使用 `$emit` 是通过使用 `emits` 选项来声明子组件可以触发的事件。在父组件中,通过监听子组件触发的事件来执行相应的逻辑。
首先,在子组件中,你需要声明你希望触发的事件。例如:
```vue
<template>
<button @click="handleClick">点击触发事件</button>
</template>
<script>
export default {
emits: ['myEvent'],
methods: {
handleClick() {
this.$emit('myEvent', payload);
}
}
}
</script>
```
在父组件中,你可以监听子组件触发的事件并执行相应的逻辑。例如:
```vue
<template>
<div>
<ChildComponent @myEvent="handleEvent" />
</div>
</template>
<script>
import ChildComponent from './ChildComponent.vue';
export default {
components: {
ChildComponent
},
methods: {
handleEvent(payload) {
// 处理子组件触发的事件
}
}
}
</script>
```
这样,当子组件中的按钮被点击时,会触发 `myEvent` 事件,并在父组件中执行 `handleEvent` 方法。
阅读全文