vue3 之 组合式API—provide和inject

本文详细介绍了Vue.js中组件间跨层通信的方法,包括使用`provide`提供数据和方法,`inject`获取数据,以及如何确保响应式数据传递。同时涵盖了底层组件通知顶层组件更新的机制,以及组件树中多层级组件关系的应用。
摘要由CSDN通过智能技术生成
作用

顶层组件向任意的底层组件传递数据和方法,实现跨层组件通信

场景

room-page为顶层组件
room-msg-comment为底层组件
在这里插入图片描述

跨层传递普通数据

1.顶层组件通过provide函数提供数据
2.底层组件通过inject函数获取数据
在这里插入图片描述
在这里插入图片描述

跨层传递响应式数据

在调provide函数时,第二个参数设置为ref对象
在这里插入图片描述
在这里插入图片描述

跨层传递方法

顶层组件可以向底层组件传递方法,底层组件调用方法修改顶层组件中的数据
在这里插入图片描述
在这里插入图片描述

需求解决

在这里插入图片描述

总结

1.provide和inject的作用是什么?
跨层组件通信

2.如何在传递的过程中保持数据响应式?
第二个参数传递ref对象

3.底层组件想要通知顶层组件做修改,如何做?
传递方法,底层组件调用方法

4.一棵组件树中只有一个顶层和底层组件吗?
相对概念,存在多个顶层和底层的关系
只要在组件树中能形成顶层和底层的组件关系都可以使用provide和inject

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jiojio冲冲冲

能帮助你是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值