全局事件总线原理:利用自定义事件实现

  1. 在main.js中安装全局事件总线

    import Vue from 'vue';
    import App from 'App.vue';
    new Vue({render: h => h(App),beforeCreate() {// 在Vue实例创建之前安装全局事件总线Vue.prototype.$bus = this;}
    }).$mount('#app');
    
  2. 在需要接收数据的组件中定义、解绑自定义事件

    <!-- 需要接收数据的组件 -->
    <template></template>
    <script>export default {methods: {getValue(value) {console.log('接收到的数据为:' + value);}},mounted() {this.$bus.$on('zidingyiEvent', this.getValue);},beforeDestroy() {this.$bus.$off('zidingyiEvent');}}
    </script>
    
  3. 在需要发送数据的组件中触发自定义事件

    <template><div><button @click="send">点击传递数据</button></div>
    </template>
    <script>export default {data() {return {person: {name: 'wuwu',age: 18}}},methods: {send() {this.$bus.$emit('zidingyiEvent', this.person);}}}
    </script>
    

Vue的全局事件总线实现任意组件间通信相关推荐

  1. vue组件通信---全局事件总线(任意组件间通信)

    描述: 全局事件总线是组件间通信的一种方式,适用于任意组件间通信 1.安装全局事件总线: 在main.js入口文件中完成全局事件总线的安装配置 new Vue({el:'#app',render: h ...

  2. Vue学习(十六):组件间通信

    1. props 1.1 使用 功能:让组件接收外部传过来的数据 传递数据:<Demo name="xxx"/> 接收数据: 第一种方式(只接收):props:['na ...

  3. 「后端小伙伴来学前端了」Vue中全局事件总线(GlobalEventBus)原理及探究过程

    前言 上一篇文章写了 Vue 中的自定义事件,自定义事件是全局事件总线基础.我在上一篇文章中埋下了一个小小的伏笔.如下图: 我说过,在Vue中如果我们用(@orv-on)给组件绑定上一个自定义事件,其 ...

  4. vue -- watch侦听器与父子组件间通信

    watch侦听器 方式一 1.默认有两个参数 newValue与oldValue 2.如果是对象类型那么拿到的是代理对象 如果要进行深度监听 需要加上 deep : true 如果想要第一次渲染直接执 ...

  5. Vue学习笔记三(组件间通信)

    主要通信方式包括: 1.props属性 父---->子,子传父也可以通过方法实现,传递的可以是一个数据对象,或者一个方法,是方法的时候子组件调用该方法,通过传参方式将数据传递给父组件. < ...

  6. Vue(组件间通信:props、自定义事件、全局事件总线、消息订阅与发布)

    一.props props不仅可以实现父给子传递信息,还可以进行子给父传递信息 1.父给子传递信息: 父组件中给子组件实例传递信息 子组件利用props进行接收组件传递信息(接收方式有三种:数组.对象 ...

  7. Vue | 使用Vue脚手架 【脚手架的基本使用+ref属性+props属性+mixin混入+插件scoped样式+TodoList+浏览器本地存储+组件的自定义事件+全局事件总线+过度与动画】

    文章目录 脚手架的基本使用 初始化脚手架 分析脚手架结构 render函数 修改默认配置 ref属性 props属性 mixin混入 插件 scoped样式 Todo-list案例 组件化编码流程(通 ...

  8. 【Vue组件间通信】 全局事件总线、订阅与发布

    目录 一.全局事件总线 作用 安装 组件使用案例 案例分析 组件一(小明) 组件二(小红) 效果展示 二.订阅与发布 安装 组件使用案例 案例分析 组件一(小明) 组件二(小红) 效果展示 一.全局事 ...

  9. 全局事件总线 (GlobalEventBus)

    一.一种组件间通信的方式,适用于任意组件间通信. 二.安装全局事件总线: new Vue({...BeforeCreate() {Vue.prototype.$bus = this; // 安装全局事 ...

最新文章

  1. 用脚本批量执行redis命令
  2. web02--jsp数据传递
  3. 判断链表是否为回文结构
  4. SELinux基本概念及基本配置
  5. PYPL 4 月排行:Python 最流行,Java 还行不行?
  6. 9206 1225 mybank系统 随堂笔记
  7. web虚拟服务器4核32g,Web服务器配备四核的优势
  8. 分布式系统关联查询_一文详解分布式系统 | 留言送书
  9. NVIDIA/Apex安装时遇到 C++编译:unrecognized command line option ‘-std=c++14’ 错误解决
  10. adb命令启动activity、service,发送broadcast
  11. 图01---图的基本概念与模型
  12. 焓湿图软件 android,焓湿图查询计算软件
  13. android与单片机wifi通信原理图,单片机怎么和wifi模块实现通讯_wifi模块与单片机通信原理 - 全文...
  14. Evaluate the standards between the Top Five through ratings of transferred players on whoscored.com
  15. 关于c++产生string subscript out of range问题的自己的经历与解决方案
  16. 信号量sem_wait()函数的学习
  17. windows下解决Git报错: LF will be replaced by CRLF the next time Git touches it
  18. 测试架构需要具备哪些能力
  19. html中加大字体,html字体加大标签与写法介绍
  20. 客户端解析html5,基于HTML5的WebGIS实时客户端设计

热门文章

  1. jbpm开发实战----委托
  2. PAT-Top-1003 Universal Travel Sites (35分)网络流最大流
  3. Servlet-个人归纳总结
  4. Java编程:浅析泛型类型中的桥接方法
  5. list与tuple
  6. 4412驱动-sixth_drv 同步互斥按键驱动
  7. ns3—— sixth.cc 大概理解
  8. 项目冲刺 Sixth
  9. 2009年数学建模B题
  10. 手机变电脑,畅玩更愉快(免费领取3个月云电脑,可用办公,可用做PPT,可用玩游戏)