前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

vue2中废弃了$dispatch和$broadcast广播和分发事件的方法。父子组件中可以用props和$emit()。如何实现非父子组件间的通信,可以通过实例一个vue实例Bus作为媒介,要相互通信的兄弟组件之中,都引入Bus,之后通过分别调用Bus事件触发和监听来实现组件之间的通信和参数传递。
首先需要在任意地方添加一个bus.js

在bus.js里面 写入下面信息

 import Vue from 'vue'export default new Vue;

在需要通信的组件都引入Bus.js

如果你的bus.js是自定义一个bus的文件那from后面就改成你的所放的位置

import Bus from './bus.js'

接下来就是要组件通信了

添加一个 触发 #emit的事件按钮

<template><div id="emit"><button @click="bus">按钮</button></div></template> import Bus from './bus.js'
export default { data() {return {message: ''"}},methods: {bus () {Bus.$emit('msg', '我要传给兄弟组件们,你收到没有')}}
}

打开要和$emit通信的另外一个组件  添加

在钩子函数中监听msg事件

<template><div id="on"><p>{{message}}</p></div>
</template>import Bus from './bus.js'
export default {data() {return {message:  ''}},mounted() {let self = thisBus.$on('msg', (e) => {self.message = econsole.log(`传来的数据是:${e}`)})}}

最后p会显示来自$emit传来的信息

转自:https://www.cnblogs.com/place-J-P/p/7586819.html

vue 2 使用 Bus.js 实现兄弟 (非父子) 组件通信 简单案例相关推荐

  1. VUE非父子组件通信Bus——公交车踩坑笔记

    抛开父子组件的通讯,对于非父子组件通信,简单的数据交互,使用Bus是非常不错的. 遇到的坑有两个. 1.两个组件的信息交互代码写在哪个生命周期函数中,如果只是点击组件A标签触发函数,然后向界面B传递参 ...

  2. Vue 非父子组件通信

    前面的话 在实际业务中,除了父子通信外,还有很多非父子组件通信的场景,非父子组件一般有两种,兄弟组件和跨多级组件.Vue.js 2.x中,使用一个空的Vue实例作为中央事件总线(bus). 中央事件总 ...

  3. Vue之非父子组件通信

    Vue之非父子组件通信 非父子组件传值方法: 1:在model中新建一个js文件 引入Vue 实例化Vue  最后暴露相关实例 // 引入vue import Vue from 'vue' // 创建 ...

  4. Vue 非父子组件通信方案

    Vue 非父子组件通信方案 概述 在 Vue 中模块间的通信很普遍 如果是单纯的父子组件间传递信息,父组件可以使用 props 将数据向下传递到子组件,而在子组件中可以使用 events (父组件需要 ...

  5. vue父子组件通信以及非父子组件通信的方法

    组件是 vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用.一般来说,组件可以有以下几种关系,父子关系.兄弟关系和隔代关系,简化点可以分为父子关系和 ...

  6. VUE非父子组件通信

    非父子组件通信 vue非父子组件传值方式,本文章整理了两种方式:vuex和总线bus.vuex相比于总线bus来说非常的稳定,推荐直接使用vuex. 我看其他的文章基本上是[点击导航栏回退的时候,去获 ...

  7. Vue 非父子组件通信 (ref)

    Vue 非父子组件通信 (ref) 流程:1. 先在son子组件中定义一个数据和事件处理程序data( ) { return { flag: false }} , methods: { cry( ) ...

  8. 子组件调用父组件方法_vue父子组件通信以及非父子组件通信的方法

    组件是 vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用.一般来说,组件可以有以下几种关系,父子关系.兄弟关系和隔代关系,简化点可以分为父子关系和 ...

  9. Vue非父子组件通信的几种方式

    文章目录 1.provide和inject 1.1基本使用 1.2如何处理响应式数据 2.全局事件总线mitt库 2.1安装mitt库,封装eventbus.js工具类 2.2在其中一个组件中触发事件 ...

最新文章

  1. DeepMind最新发现!神经网络的性能竟然优于神经符号模型
  2. turtle 20秒画完小猪佩奇“社会人”
  3. Mysql学习笔记(六)增删改查
  4. 从/etc/inetd.conf学习服务(4)
  5. TaskAttempt killed because it ran on unusable node IP:8041 Container released on a *lost* node
  6. 什么是 ARM 架构处理器?
  7. Yii2 使用 faker 生成假数据(转)
  8. 网络机顶盒可以直接刷linux吗_卡盟刷钻平台免费刷-上海装修报价
  9. 发现新世界:神级浏览器插件TamperMonkey(暴力猴)
  10. wttr.in Linux 下查看天气
  11. 软件工程总结笔记——软件结构设计(四)
  12. pycaret 2 1新增功能
  13. JAVA 面试 知识点整理
  14. 函数式编程之Promise的奇幻漂流
  15. 《世界因你不同》——大学生活:贫穷而快乐的日子
  16. Win10怎么录制高清的电脑屏幕?Win10屏幕录制工具哪个好?
  17. 【C语言你真的学会了吗】C语言深度剖析(1)【关键字深度剖析】
  18. 关于 FullNat 模式的 Toa 实现原理【转】
  19. 阿里P8总结的Nacos入门笔记,从安装到进阶小白也能轻松学会
  20. arm架构服务器安装系统教程,docker服务在arm平台上部署安装方法

热门文章

  1. 一步步编写操作系统 43 汇编语言和c语言的理解
  2. linux mysql密码转义_linux忘记mysql密码处理方法
  3. PWN-PRACTICE-BUUCTF-13
  4. 【Python学习】 - sklearn学习 - 评估指标precision_score的参数说明
  5. 【蓝桥杯官网试题 - 历届试题】发现环(dfs+并查集,或无向图tarjan判环,无向环,或拓扑排序)
  6. 机器学习笔记(1):Introduction
  7. 东明县计算机学校,东明县职业中等专业学校2021年招生信息
  8. 潢川高中2021高考成绩查询,潢川高中2020年秋季学期高一期中考试成绩分析
  9. 无法设置html过渡效果,html – CSS3过渡显示无阻止过度滚动
  10. uniapp ajax数据库查询,uniapp小程序登录、数据请求方式