在Vue 3中,Event Bus(事件总线)是一种用于在组件之间进行通信的机制。它允许不同的组件通过发布和订阅事件来进行数据传递和交互。以下是关于如何在Vue 3中使用Event Bus的分点说明,包括代码示例: 1. 理解Vue 3中Event Bus的概念和作用 Event Bus是一种集中式的事件管理机制,它允许不同的组件之间发送和接收事件...
import EventBus from 'lib/bus.js' // 或者:import EventBus from 'mitt' const $bus = new EventBus() // ② 挂载 // 1.使用provide提供 app.provide('$bus', $bus) // 2.挂载到this上 app.config.globalProperties.$bus = $bus 复制代码 3. 在组件中引入并使用 在created中使用 // Button.v...
vue3取消了全局实例的$on,$off,所以可以借助轻量Mitt库实现200bytes轻量库,进行组件通信,可以跨平台使用,支持批量监听和批量移除。以下为vue3+ts项目中使用Mitt的方法import { createApp } from 'vue' import App from './App.vue' import mitt from "mitt"; const Mit = mitt() // TypeScript注册,必须...
vue3.x版本中不能在使用eventBus了,不过官方有替代品mitt或tiny-emitter 本文介绍的是tiny-emitter 安装 npm install tiny-emitter --save 使用 varEmitter=require('tiny-emitter');varemitter=newEmitter();emitter.on('some-event',function(arg1,arg2,arg3){//});emitter.emit('some-event','arg1 value'...
本文介绍的是tiny-emitter
最近遇到了vue项目中的性能问题,整个项目不断的进行操作五分钟左右,页面已经很卡,查看页面占用了1.5G内存,经过排查一部分原因,是自己模块使用的eventBus在离开页面未进行off掉。我们进行下验证: 1、不随生命周期销毁 我们在home首页的代码是这样的: created () { ...
Vue2中EventBus总线使用 参考https://juejin.cn/post/6995015040805896200 在utils文件夹中创建bus.js文件 importVuefrom'vue'; exportconstBus=newVue(); 在需要的地方使用 // Fisrt import{Bus}from'../../utils/Bus.js'; // 监听数据 mounted() {...