3. main.js注册空的Vue对象, 只负责$on注册事件, $emit触发事件, 一定要确保$on先执行 4.$off的格式: $off() 会取消所有的事件订阅; $off('事件名') 会取消指定事件名的; $off('事件名', 回调) 会取消指定事件名的,指定回调
console.log('暂时取消移除方法') window.eventBus.$off(events.GET_PATIENT_INFO, fn) window.eventBus.$off(events.GET_PATIENTLIST_INFO, fn) window.eventBus.$off(events.TASK_CENTER_INFO, fn) } 之前也比较少用eventBus去做事件的监听,然后无脑的抄了波作业。呃呃,这么抄用的 1 2 3 4 5 6 7 ...
EventBus.$off('my-event'); } 三、实例说明 下面通过一个具体的例子来说明如何在 Vue 项目中使用 EventBus。 3.1 创建 EventBus 首先创建eventBus.js文件: import Vue from 'vue'; export const EventBus = new Vue(); 3.2 组件 A 发布事件 在组件 A 中引入 EventBus 并发布事件: <template> Send E...
EventBus.$off('custom-event', this.eventBusListener); } EventBus 在前端(React 中)的使用 在React 中,没有像 Vue 中的事件总线那样的直接内置机制。React 通常使用 props 和回调函数来实现组件之间的通信。然而,如果你的应用需要在不适用 props 传递的情况下进行全局事件的订阅和发布,可以使用第三方库,比如...
$off(name, id) { // 删除存储在事件列表中的该事件 delete this.eventObj[name][id]; console.info(`id为${id}的事件已被取消订阅`) // 如果这是最后一个订阅者,则删除整个对象 if (!Object.keys(this.eventObj).length) { delete this.eventObj[name]; ...
beforeDestroy() { // 在组件销毁前取消事件监听 EventBus.$off('custom-event', this.eventBusListener); } EventBus 在前端(React 中)的使用 在React 中,没有像 Vue 中的事件总线那样的直接内置机制。React 通常使用 props 和回调函数来实现组件之间的通信。然而,如果你的应用需要在不适用 props 传递的情况...
import{eventBus}from'./event-bus.js'EventBus.$off('aMsg',{}) 你也可以使用EventBus.$off('aMsg')来移除应用内所有对此某个事件的监听。或者直接调用EventBus.$off()来移除所有事件频道,不需要添加任何参数 。 上面就是EventBus的使用方法,是不是很简单。上面的示例中我们也看到了,每次使用EventBus时都需...
this.$EventBus.$off("aMsg") } }; 结束语 好了,对于vue中的事件总线的讲解就到这里了,这也是我今天在做项目时用到的一个小知识点,接下来附上一张我因为没有及时移除事件监听,导致我每重进组件一次就报错48条错误信息的图,希望大家在我的文章中能血啊都一些东西,并且不要再犯我的这种低级错误。
到事件总线中的aMsg事件*/this.$EventBus.$on("aMsg",(data)=>{//将A组件传递过来的参数data赋值给msgBthis.msgB=data;});},beforeDestroy(){//移除监听事件"aMsg"this.$EventBus.$off("aMsg")}}; 结束语 好了,对于vue中的事件总线的讲解就到这里了,这也是我今天在做项目时用到的一个小知识点,接...