vue 组件之间的数据共享

本文介绍了在Vue项目开发中组件之间的父子关系和兄弟关系,以及如何进行数据共享。父子组件间通过props实现数据传递,父组件向子组件传递简单或复杂类型数据,子组件通过自定义事件向父组件发送数据。对于兄弟组件间的数据共享,文章推荐使用EventBus方式,详细阐述了其创建和使用的步骤。
摘要由CSDN通过智能技术生成

1.组件之间的关系

在项目开发中,组件之间最常见的关系分为两种:

  • 父子关系
  • 兄弟关系

2.父子组件之间的数据共享

2.1 父组件向子组件共享数据需要使用 自定义属性 。示例代码如下:

在这里插入图片描述

子组件中 msg 的值是父组件中message复制过来的,两个彼此独立的(传简单类型)
子组件中 user 传过的是对象的引用与父组件指向的是同一个内存(传复杂类型)

2.2 子组件向父组件共享数据使用 自定义事件 。示例代码如下:

在这里插入图片描述

3.兄弟组件之间的数据共享

在 vue2.x 中,兄弟组件之间数据共享的方案是 EventBus

在这里插入图片描述

注意:接收方要定义在 created 里面,目的是组件一创建就要监听到,比如上面的 share

EventBus 的使用步骤

① 创建 eventBus.js 模块,并向外共享一个 Vue 的实例对象

② 在数据发送方,调用 bus.$emit(‘事件名称’, 要发送的数据) 方法触发自定义事件

③ 在数据接收方,调用 bus.$on(‘事件名称’, 事件处理函数) 方法注册一个自定义事件

参考资料

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值