zl程序教程

您现在的位置是:首页 >  前端

当前栏目

Vue事件总线

Vue事件 总线
2023-09-11 14:22:30 时间

相邻组件之间可以通过this.$emit(‘xxx’)触发父组件的事件并且传递参数

那么隔着多个组件,如果一步到位,触发对方的事件并且传递参数呢?

   Vue.prototype.$bus= new Vue();   //main.js中,在vue原型上挂载
this.$ bus.$on('dataFromA',  function (data) {

        });  // 一般在mounted生命周期函数中挂载
  this.$ bus.$emit('dataFromA', this.dataA);    //一般在想要触发的函数中使用
 注意:使用总线,不仅仅局限于父子关系,组件B可以与组件A是父子、兄弟等等任意关系。