当前位置: 首页 > news >正文

事件总线—Event Bus 使用及讲解

一、工作原理

事件总线,主要用来实现非父子组件之间的传值。

它的工作原理:通过new Vue()再创建一个新的 Vue 实例对象bus,将这个新的实例对象作为桥梁,来实现两个组件之间的传值。

二、工作步骤

1、创建事件总线 bus

我们可以在项目的 src 目录中,新建一个/utils/bus.js 文件,然后在该文件中,来生成 bus 对象:

import Vue from "vue";
const bus = new Vue();
export default bus;

2、设置监听器(给 bus 添加事件)

我们需要在“接收数据”的组件中,给事件总线身上添加一个事件。

import bus from "./bus.js";
export default{mounted() {// 给事件总线身上添加一个事件(箭头函数默认不会执行)bus.$on("getData",(data) => {console.log("其他组件传递的数据",data);})}
}

3、调用 bus 的事件

我们在需要“传递数据”的组件中,来调用事件总线身上的方法,同时传值:

import bus from "./bus.js";
export default{data() {return {num: 1,};},methodes: {postData() {// 调用事件总线身上的方法,同时传值bus.$emit('getData',this.num);},},
};

三、注意事项

在使用事件总线时,负责“接收数据”的组件,需要提前先渲染出来,执行生命周期函数,同时给事件总线添加事件。

如果“接收数据”和“传递数据”的组件是同时渲染出来的,我们就可以用事件总线来实现两个组件之间的传值。但是,如果“接收数据”的组件,比“传递数据”的组件后渲染,就不能使用事件总线。

http://www.lryc.cn/news/468816.html

相关文章:

  • 信息安全工程师(67)网络流量清洗技术与应用
  • 【项目】论坛系统测试
  • XJ02、消费金融|消费金融业务模式中的主要主体
  • 基于神经网络的农业病虫害损失预测
  • 【DSP】TI 微控制器和处理器的IDE安装CCSTUDIO
  • Web应用框架-Django应用基础
  • qt QMainWindow详解
  • 第二单元历年真题整理
  • Ubuntu下载protobuf
  • 【算法优化】混合策略改进的蝴蝶优化算法
  • 什么是标准差?详解
  • C++20中头文件syncstream的使用
  • 判断特定时间点开仓的函数(编程技巧)
  • 如何新建一个React Native的项目
  • 学习--图像信噪比
  • 【2024CANN训练营第二季】使用华为云体验AscendC_Sample仓算子运行
  • 使用 NumPy 和 Matplotlib 实现交互式数据可视化
  • TCP 攻击为何在 DDoS 攻击中如此常见
  • 未来汽车驾驶还会有趣吗?车辆动力学系统简史
  • LCD手机屏幕高精度贴合
  • 15_卸载操作
  • ONLYOFFICE 文档8.2版本已发布:PDF 协作编辑、改进界面、性能优化等更新
  • redis的string是怎么实现的
  • 基于STM32设计的智能婴儿床(华为云IOT)(244)
  • html+css+js实现Notification 通知
  • 【Linux】拆分详解 - 常见指令和权限理解
  • UniHttp 框架,请求http接口
  • C++20中头文件ranges的使用
  • 设计一个html+css+js的注册页,对于注册信息进行合法性检测
  • 语音识别——使用Vosk进行语音识别