this $on this,$off this.$emit
时间: 2023-08-25 22:13:42 浏览: 88
vue中$refs, $emit, $on, $once, $off的使用详解
回答: 在Vue.js中,可以使用$on方法来监听一个自定义事件,$off方法可以用来解绑事件,而$this.$emit可以用来触发一个自定义事件。 例如,在页面a中,可以使用this.$bus.$on(event, callback)来监听一个事件,并在回调函数中设置相应的逻辑。在页面b中,可以使用this.$bus.$off(event)来解绑该事件,确保不再监听该事件。 在main.js中,可以通过Vue.prototype.$bus = this来安装全局事件总线,使得在任何组件中都可以使用$on和$emit方法来进行事件的监听和触发。 在组件销毁前,最好在beforeDestroy钩子中使用this.$bus.$off(event)来解绑当前组件所用到的事件,以避免内存泄漏。 在Student组件中,可以使用this.$bus.$emit(event, data)来触发一个自定义事件,并传递相应的数据。<em>1</em><em>2</em><em>3</em>
#### 引用[.reference_title]
- *1* [组件之间使用this.$bus.$emit(),this.$bus.$on(), this.$bus.$off(event)](https://blog.csdn.net/Cool_so_cool/article/details/116234145)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item]
- *2* *3* [[vue] 全局事件总线 this.$bus.$emit this.$bus.$on ,可以实现任意组件间通信](https://blog.csdn.net/qq_14993591/article/details/121221114)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item]
[ .reference_list ]
阅读全文