关于Provider的嵌套问题以及全局setState定义类型问题

来源:4-8 【全局数据传递】组件化Context Provider

weixin_慕神3292065

2021-03-16

图片描述
请老师帮我看下图中红色字体描述的问题!

写回答

1回答

阿莱克斯刘

2021-03-17

第一个问题:“为什么不初始化一个函数呢?”

    如果初始化函数,函数应该是什么呢?很明显 appSetStateContext 的 provider 需要与 setState 函数绑定,可是声明appSetStateContext的时候setState函数还没定义出来,所以我们在这里定义个undefine属于正常操作。

第二个问题: “嵌套provider出现时,value属性是否合并”。

    value不会合并,也不会覆盖,而是会同时独立存在,均可在自组件中使用。你可以把provider想象为一个父组件,嵌套provider可以想象为两层父组件,那么父组件的state传递到自组件的时候state也不会被覆盖或者合并的,唯一的区别就是context可以跨组件传递数据,而嵌套组件只能一级一级向下传递。


1
0

React18 系统精讲 结合TS打造旅游电商平台

React18 精讲 + 结合 TS 实战 + 热门业务开发,获取必备技能

1993 学习 · 1015 问题

查看课程