美文网首页
vue两个组件之间通信,不使用父子关系

vue两个组件之间通信,不使用父子关系

作者: 舒尔诚 | 来源:发表于2019-08-24 22:56 被阅读0次

vue中的bus事件,一般作为中央事件总线来使用

简单例子:比如在A,B组件为兄弟组件,现在A要调用B的中C事件

1.创建一个bus.js

内容:

import Vue from 'vue'

const Bus = new Vue()

export { Bus }

2.在A,B组件中引入bus.js

import { Bus } from 'bus'

3.在A组件中定义要调用B事件的bus事件名

例如:Bus.$emit('callC')

4.在B组件中调用C方法

Bus.$on('callC',this.C)

Bus.$on里有两个参数,第一个是在A组件定义的名字,第二个参数是B组件要调用的方法,第二个参数也可以自定义方法,
如:

A中触发:Bus.$emit("pushmsg", msg);//触发中央总线

B中定义,在mounted中定义:
let that=this;
Bus.$on('pushmsg',msg=>{
that.pushmsg(msg);
});

相关文章

  • vm.$on and vm.$emit(兄弟组件的通信)

    兄弟通信 官方文档说明 有时候,非父子关系的两个组件之间也需要通信。在简单的场景下,可以使用一个空的 Vue 实例...

  • 非父子组件通信(实例demo)

    有时候,非父子关系的两个组件之间也需要通信。在简单的场景下,可以使用一个空的 Vue 实例作为事件总线:var b...

  • vue组件通信,中央事件总线

    vue 组件通信分为父组件与子组件通信、子组件与父组件通信、非父子关系组件通信三种 第一种大家都知道用props,...

  • vue总线Bus.js

    有时候两个组件也需要通信(非父子关系)。当然Vue2.0提供了Vuex,但在简单的场景下,可以使用一个空的Vue实...

  • Vue相关知识点

    1、vue父子组件之间的通信 在vue组件通信中其中最常见通信方式就是父子组件之中的通性,而父子组件的设定方式在不...

  • vue两个组件之间通信,不使用父子关系

    vue中的bus事件,一般作为中央事件总线来使用 简单例子:比如在A,B组件为兄弟组件,现在A要调用B的中C事件 ...

  • vue组件之间通信

    vue 组件之间通信 vue组件之间通信方式: 1.父组件通过props向下传数据给子组件,子组件通过$emit事...

  • 创建单页应用

    Vue.js + Vue Router 创建单页应用, 使用vuex还管理组件间的通信。 State:存放组件之间...

  • vue组件传值&vuex

    vue技术分享 目录 vue组件之间的通信 vue中数据监听watch的使用 vuex状态管理 vue-aweso...

  • vue

    1.什么是vue声明周期 2.vuejs特性 3.vue的特点 vue 组件之间通信?父组件直接使用props 传...

网友评论

      本文标题:vue两个组件之间通信,不使用父子关系

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