vue3eventbus使用
时间: 2023-08-24 08:09:39 浏览: 123
详解vue 组件之间使用eventbus传值
Vue 3 中的 EventBus 可以通过创建一个新的 Vue 实例来实现事件的发布和订阅。下面是使用 EventBus 的基本步骤:
1. 创建一个新的 Vue 实例作为 EventBus:
```
import { createApp } from 'vue';
const app = createApp({});
export const eventBus = app;
```
2. 在需要订阅事件的组件中,使用 `$on` 方法来监听事件:
```
import { eventBus } from './eventBus';
eventBus.$on('eventName', (data) => {
// 处理事件数据
});
```
3. 在需要发布事件的组件中,使用 `$emit` 方法来触发事件:
```
import { eventBus } from './eventBus';
eventBus.$emit('eventName', eventData);
```
4. 可选:在不需要订阅事件时,使用 `$off` 方法来取消对事件的监听:
```
import { eventBus } from './eventBus';
eventBus.$off('eventName');
```
这样就可以在不同的组件之间进行事件的发布和订阅了。记得在需要使用 EventBus 的组件中导入 `eventBus` 对象,并通过它来进行事件的操作。
阅读全文