项目开发中组件之间的数据共享

在项目开发中,组件之间的关系有父子关系、兄弟关系和后代关系三种,各种组件关系之间的数据共享方式和方法都不尽相同,本节web前端内容我们就来看一下组件间数据共享的过程。

1.父组件和子组件之间共享数据

父组件通过v-bind 属性绑定向子组件共享数据。同时,子组件需要使用props 接收数据。示例代码如下:

子组件通过自定义事件的方式向父组件共享数据。示例代码如下:


 

2.父子组件之间数据的双向同步

父组件在使用子组件期间,可以使用v-model 指令维护组件内外数据的双向同步:

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

兄弟组件之间实现数据共享的方案是EventBus。可以借助于第三方的包mitt 来创建eventBus 对象,从而实现兄弟组件之间的数据共享。示意图如下:


在项目中运行如下的命令,安装mitt 依赖包,

创建公共的EventBus 模块,在项目中创建公共的eventBus 模块如下:

4.在数据接收方自定义事件

在数据接收方,调用bus.on('事件名称', 事件处理函数) 方法注册一个自定义事件。示例代码如下:


在数据接发送方触发事件

在数据发送方,调用bus.emit('事件名称', 要发送的数据) 方法触发自定义事件。示例代码如下:



5.后代关系组件之间的数据共享

后代关系组件之间共享数据,指的是父节点的组件向其子孙组件共享数据。此时组件之间的嵌套关系比较复杂,可以使用provide和inject实现后代关系组件之间的数据共享。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值