Vue2.0— 全局事件总线GlobalEventBus(十九)

Posted 王同学要努力

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue2.0— 全局事件总线GlobalEventBus(十九)相关的知识,希望对你有一定的参考价值。

【Vue2.0】— 全局事件总线GlobalEventBus(十九)


main.js

import Vue from 'vue'
import App from './App.vue'
Vue.config.productionTip = false

//创建vm
new Vue(
    el: '#app',
    render: h => h(App),
    beforeCreate() 
        //安装全局事件总线
        Vue.prototype.$bus = this
    
)

School.vue

<template>
  <div class="demo">
    <h2>学校名称:schoolName</h2>
    <h2>学校地址:address</h2>

  </div>
</template>

<script>
  export default 
    name: 'School',

    data() 
      return 
        schoolName: '二中',
        address: '上海'
      
    ,
    mounted() 
      this.$bus.$on('hello', (data) => 
        console.log('我是School组件收到了数据', data);
      )
    ,
    //解绑当前组件所用的事件
    beforeDestroy() 
      this.$bus.$off('hello')
    
  

</script>

<style scoped>
  .demo 
    background-color: pink;
  

</style>

Student.vue

<template>
  <div class="demo">
    <h2>学生姓名:name</h2>
    <h2>学生年龄:age</h2>
    <button @click="sendStudentname">把学生名给School组件</button>
  </div>
</template>

<script>
  export default 
    name: 'Student',
    data() 
      return 
        name: '张三',
        age: 19
      
    ,
    methods: 
      sendStudentname() 
        this.$bus.$emit('hello', 666)
      
    ,


  

</script>

<style>
  .demo 
    background-color: skyblue;
  

</style>

以上是关于Vue2.0— 全局事件总线GlobalEventBus(十九)的主要内容,如果未能解决你的问题,请参考以下文章

Vue2.0笔记——组件3

vue2.0 配置 选项 属性 方法 事件 ——速查

Vue事件总线实例(全局事件)

Vue事件总线实例(全局事件)

Vue事件总线实例(全局事件)

vue3全局事件总线学习