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

vue2中bus的使用

说明:为了解决组件间的通信,也就是组件与组件间的数据传递(它们之间毫无关系);

这里以组件1传递数据到组件2为例

1.首先新建一个Bus.js文件

import Vue from 'vue'
const Bus = new Vue()
export default Bus

2.在组件1中引用 传递数据

import Bus from './Bus'export default {data() {return {.........}},methods: {....Bus.$emit('log', 120)},}   

3.在组件2中引用 接收数据

import Bus from './Bus'export default {data() {return {.........}},mounted () {Bus.$on('log', content => { console.log(content)});    }    
} 

4.注意事项

(1)在传递数据的组件中使用Bus.$emit(),在接收数据的组件中使用Bus.$on()

(2)Bus.$emit()的第一个参数要与Bus.$on()的第一个参数一模一样(可以随意命名)

(3)Bus.$emit()的第二个参数是要传递的数据,如果要传递多个数据就以逗号隔开,相当于函数的实参一样

(4)Bus.$on()的第二个参数是箭头函数或者定义的方法,如果要接收多个数据就以逗号隔开,相当于函数的形参

(5)一定要在接收数据的组件页面关闭页面时销毁Bus(卸载生命周期里进行操作),具体如下

beforeDestroy () {Bus.$off('updateData', this.getData);};//this.getData是自己定义的方法,用来接收数据的

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

相关文章:

  • 实证研究在机器学习中的应用
  • IO进程线程day8(2023.8.6)
  • 【5G NR】逻辑信道、传输信道和物理信道的映射关系
  • tmux基础教程
  • 项目实战 — 消息队列(4){消息持久化}
  • AI编程工具Copilot与Codeium的实测对比
  • webpack基础知识六:说说webpack的热更新是如何做到的?原理是什么?
  • Linux从安装到实战 常用命令 Bash常用功能 用户和组管理
  • webpack基础知识三:说说webpack中常见的Loader?解决了什么问题?
  • 深度学习:Pytorch常见损失函数Loss简介
  • 【Android-java】Parcelable 是什么?
  • Spring整合MyBatis小实例(转账功能)
  • List集合的对象传输的两种方式
  • 海外媒体发稿:软文写作方法方式?一篇好的软文理应合理规划?
  • 【秋招】算法岗的八股文之机器学习
  • 为什么list.sort()比Stream().sorted()更快?
  • SQL账户SA登录失败,提示错误:18456
  • Linux 终端操作命令(1)
  • java与javaw运行jar程序
  • 安装和配置 Home Assistant 教程 HACS Homkit 米家等智能设备接入
  • 解决 Android Studio 的 Gradle 面板上只有关于测试的 task 的问题
  • 安全杂记 - 复现nodejs沙箱绕过
  • 信息安全事件分类分级指南
  • Vue系列第八篇:echarts绘制柱状图和折线图
  • SQL-每日一题【1164. 指定日期的产品价格】
  • memcpy、memmove、memcmp、memset函数的作用与区别
  • socket 到底是个啥
  • 奥威BI—数字化转型首选,以数据驱动企业发展
  • vue中swiper使用
  • webpack与vite区别