首页 > 技术文章 > vue项目里使用bus传值

yanyanliu 2020-05-20 19:51 原文

首先建立一个bus.js的文件,在此文件里操作

import Vue from 'vue'
const Bus = new Vue()
export default Bus

然后在main.js文件里导入

import EventBus from '@/bus.js'
Vue.use(EventBus)
Vue.prototype.$EventBus = EventBus

然后就可以使用了,比如在a文件里,派发这个值

this.$EventBus.$emit('uploading','sure')

在b文件里接收可以放在mounted里边

mounted() {
       this.$EventBus.$on('uploading', val=>{
       console.log(val)       //打印出来 val :sure
     })
  }

也可以派发多个值

 this.$EventBus.$emit('Click', {
        id: id,
        num:num
      })

接收

 this.$EventBus.$on('Click', ({ id,num }) => {
       console.log(id,num)        
    })

 

推荐阅读