this.$emit两个事件
时间: 2023-12-20 14:32:27 浏览: 91
this.$emit是Vue.js中用于触发自定义事件的方法。通过this.$emit可以在组件之间进行事件的传递和触发。下面是两个使用this.$emit的事件示例:
1. 子组件触发父组件事件:
```javascript
// 子组件
<template>
<button @click="cancelCU">取消</button>
</template>
<script>
export default {
methods: {
cancelCU() {
this.$emit('cancel') // 触发名为cancel的自定义事件
}
}
}
</script>
// 父组件
<template>
<div>
<child-component @cancel="handleCancel"></child-component>
</div>
</template>
<script>
import ChildComponent from './ChildComponent.vue'
export default {
components: {
ChildComponent
},
methods: {
handleCancel() {
console.log('取消事件被触发')
}
}
}
</script>
```
2. 全局事件的监听和触发:
```javascript
// 监听全局事件
mounted() {
this.$root.$on('globalEvent', this.handleGlobalEvent)
},
// 触发全局事件
methods: {
triggerGlobalEvent() {
this.$root.$emit('globalEvent', '参数1', '参数2')
},
handleGlobalEvent(param1, param2) {
console.log('全局事件被触发', param1, param2)
}
}
```
阅读全文