好学生的学习随手记:组件传值之provide和inject

今天发现了一对好玩的组件传值方式:provide和inject。
我平常用的最多是组件传值方式是父子组件props、$emit这些,今天看到一个封装插件里存在一种使用provide和inject进行组件传值的方式。这种方式比较适合嵌套较多的高级组件传值使用。
父组件中设置provide以对象的形式扔出数据
在这里插入图片描述
子组件设置inject注入对应的属性
在这里插入图片描述

看了网上一些大佬的文章,总结起来就是将自己组件的数据在provide中定义,然后provide会其将抛出来,哪个组件想要获取这个数据,就设置inject将对应的字段注入到自身的组件里。注意:这里定义provide的组件与inject接收数据的组件需要是父子,或者爷孙关系 =》 provide的组件 含(子组件 含(inject的组件))
props那种传值方式对组件之间的关系以及属性的设置会相对具有针对性,provide的方式相当于把数据做成公共的,倒是很类似vuex。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值