Vue兄弟组件通信
Vue兄弟组件通信之借助中央事件总线
我们提供的服务有:网站设计制作、成都网站建设、微信公众号开发、网站优化、网站认证、宁洱ssl等。为上千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的宁洱网站制作公司
下载链接:百度网盘
其实要实现兄弟组件通信,就算是通过父子组件通信的方式也是可以达到的,如 子 ——>父——>子;
在这里呢,就不对这种方式进行赘述,下面给大家介绍——借助中央事件总线。
第一步:
在 组件文件夹中,创建一个js文件,这里将其命名为“bus,js”,在里面写入如下代码:
import Vue from 'vue';
const Bus = new Vue();
export default Bus;
第二步:
假如组件a.vue 和 组件b.vue是兄弟组件,那么分别在两个.vue文件里,引入bus.js,写法如下:
import Bus from './bus.js'
引入的具体路径按照实际的项目写,这里bus.js是和.vue文件同级。
第三步:
假如我们要实现a.vue传值给b.vue,则在a.vue中,恰当的地方,比如某事件触发后,或者mounted之类的生命周期中都行,写入:
Bus.$emit("事件名",要传的数据);
第四步:
在b.vue的mounted中写入:
Bus.$on('事件名',res=>{
console.log(res)//传过来的数据
})
传过来的数据可以是一个变量,也可以是一个对象、数据。
到此,通信结束。
本文名称:Vue兄弟组件通信
转载源于:http://pwwzsj.com/article/pocpjd.html