博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
vue2.0之非父子组件通信
阅读量:4180 次
发布时间:2019-05-26

本文共 725 字,大约阅读时间需要 2 分钟。

    在vue的1,0版本里,组件之间的通信是通过$dispatch和$broadcast来进行通信的,但是在2.0版本里面则取消上述这两个方法,并提出了新的解决办法。关于vue2.0的父子组件的通信上文也有讲过,现在要讲的是非父子组件。

    在vue官网中,官方推荐使用eventBus来进行非父子组件的通信,本文现在演示在项目中如何实现非父子组件通信。首先在父组件(App.vue)里,有两个子组件,分别是foo和bar,foo通过$emit方法把信息发送出去,而bar通过$on方法来接收到foo发送的东西,具体演示如下。

首先先新建一个bus.js,里面内容如下:

import Vue from 'vue'export default new Vue();

在父组件中定义后这两个组件:

相应的,foo组件是通过$emit(name,val)方法将信息发送出去,name表示发送信息的名字,val表示发送的内容,导入bus.js:

然后bar组件里通过$on(name,callback)里获取到foo组件发送的内容,name表示foo组件发送的信息名字,callback表示一个回调函数,来执行获取信息后的一些操作,代码如下,导入bus.js:

最后这可以实现兄弟组件通信了。

转载地址:http://wfwoi.baihongyu.com/

你可能感兴趣的文章
《Android系统学习》之JAVA与C混合编程——JNI
查看>>
《C预处理》之#ifndef
查看>>
《Linux内核编程》第十三章:Linux对进程内存的二级页式管理
查看>>
ARM协处理器
查看>>
《miniOS分析》前言
查看>>
《Linux内核编程》第十四章:Linux驱动基础
查看>>
Linux平台下ARM-Linux交叉编译工具链
查看>>
Window平台下ADS自带ARMCC编译工具链
查看>>
micro2440/tiny6410使用JLINK直接烧录nand flash
查看>>
C编译器、连接器与可执行机器码文件
查看>>
android linker 浅析
查看>>
802.11 traffic id
查看>>
Android系统wifi分析-手动连接过程
查看>>
设置IP别名Shell脚本
查看>>
Source Insight 宏-单行注释
查看>>
levelDB源码分析-Arena
查看>>
levelDB源码分析-SSTable
查看>>
平滑升级Nginx的Shell脚本
查看>>
SSH远程会话管理工具
查看>>
canvas标签设长宽是在css中还是在标签中
查看>>