vue自定义事件、解绑、销毁全部
时间: 2023-10-01 11:03:52 浏览: 38
Vue.js 提供了 $emit() 方法来触发自定义事件,可以使用 v-on 指令监听自定义事件。
例如,我们可以在组件中定义一个自定义事件:
```
<template>
<button @click="handleClick">点击触发自定义事件</button>
</template>
<script>
export default {
methods: {
handleClick() {
this.$emit('my-event', '参数');
}
}
}
</script>
```
然后,在父组件中监听该事件:
```
<template>
<div>
<child-component @my-event="handleMyEvent"></child-component>
</div>
</template>
<script>
export default {
methods: {
handleMyEvent(param) {
console.log('触发了自定义事件,参数为:' + param);
}
}
}
</script>
```
如果要解绑自定义事件的监听,可以使用 $off() 方法:
```
this.$off('my-event');
```
如果要销毁组件的全部事件监听,可以在组件销毁时使用 $off() 方法:
```
beforeDestroy() {
this.$off();
}
```
这样可以清除组件的全部事件监听。