Vue使用vue-bus进行组件间通信

首先在main.js中将vue-bus注册

import VueBus from 'vue-bus'

Vue.use(VueBus)

如果提示没有vue-bus,则执行安装命令:

npm install vue-bus --save

监听事件:
通过this.$bus.on('自定义事件名称',事件函数)
举例

mounted: function () {
  this.$bus.on('自定义事件名称', (val) => {
    this.num += val
  })
}

只监听一次:
通过this.$bus.once('自定义事件名称',事件函数)

触发事件:
通过this.$bus.emit('自定义事件名称', 参数)
举例

methods: {
    handle: function () {
      this.$bus.emit('自定义事件名称', 1)
    }
}

销毁监听:
通过this.$bus.off('自定义事件名称')

你可能感兴趣的:(Vue使用vue-bus进行组件间通信)