当我们vue使用Bus的时候,记得要使用$off清除
// a 组件created () {Bus.$on('refreshGroupList', () => {// 这是一个bus的订阅自定义事件});},beforeDestroy () { // 在组件销毁之前清除自定义事件Bus.$off('refreshGroupList');}// b 组件 在事件中触发自定义事件Bus.$on('refreshGroupList');之所以清除bu
·
// a 组件
created () {
Bus.$on('refreshGroupList', () => {
// 这是一个bus的订阅自定义事件
});
},
beforeDestroy () { // 在组件销毁之前清除自定义事件
Bus.$off('refreshGroupList');
}
// b 组件 在事件中触发自定义事件
Bus.$on('refreshGroupList');
之所以清除bus的自定义事件,是因为bus的自定义事件是基于“发布订阅”模式的。当我们没有清除自定义事件,就会在页面离开再进入后就会触发$on,就会给事件队列中添加一个refreshGroupList事件,每次离开页面再进入都会添加,所有$emit触发的时候都会多执行一次自定义事件的回调函数。
更多推荐
已为社区贡献15条内容
所有评论(0)