美文网首页over前端Vue
vue使用bus进行组件通信

vue使用bus进行组件通信

作者: lesdom | 来源:发表于2018-12-24 23:45 被阅读0次

    bus

    utils - bus.js

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

    一、传值

    发送信息

    import bus from '@/utils/bus'
    

    第一个参数为标志变量,第二个参数为通信的值

    bus.$emit('message', 'hello');
    

    接收信息

    import bus from '@/utils/bus'
    

    第一个参数为标志变量,第二个参数中的e为通信的值

    bus.$on('message', (e) => {
        console.log(e)
    })
    

    二、调用方法

    一个组件(A)调用另一个组件(B)的方法

    B组件的方法

    import bus from '@/utils/bus'
    
    mounted () {    
      bus.$on('testA', this.testA)  
    },
    
    testA () {
      console.log('由A组件调用')
    },
    

    A组件调用

    import bus from '@/utils/bus'
    
    mounted () {
      bus.$emit('testA')
    },
    

    网站导航

    网站导航

    相关文章

      网友评论

        本文标题:vue使用bus进行组件通信

        本文链接:https://www.haomeiwen.com/subject/hdztlqtx.html