vue传值 bus总线 适合兄弟组件 大屏多个组件的情况

本文介绍了如何在Vue应用中通过bus实现组件间的通信,重点讲解了bus的创建、使用以及在组件间正确传递参数的方法。特别提到了在组件销毁时解除监听,以避免资源浪费。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

任意组件传值 bus传值

util下面创建bus.js文件

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

main.js 引入

import bus from "@/util/bus";
挂载
Vue.prototype.bus = bus;

组件使用

组件A调用bus,定义方法名threeTowmsLayer,后面接的是需要传递的参数

  this.bus.$emit("threeTowmsLayer", this.mapConfig.wmsLayer);

组件B在created里面先定义bus的方法值接收
同时记得要在销毁前销毁方法避免重复调用
注意在组件A调用bus时 要确认组件B已经存在渲染哦

  created () {
    this.bus.$on("threeTowmsLayer", (data) => {
      this.threeCheckguanwangList = data;
    });
  },

  beforeDestroy () {
    this.bus.$off("threeTowmsLayer");
  },

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值