在使用useContext时还需要在父组件外部加上Provider吗?
来源:4-7 【全局数据传递】Context 与 useContext

Ashhher
2022-01-18
因为在使用useContext的时候子组件并不需要加Consumer了,所以想问下老师这种情况下可以把index.tsx中Provider代码部分删去吗?如果可以删去,那么还需要其他方式指定value吗?
因为我尝试删去provider后代码还是可以正常运行 所以不太确定provider在这里是不是必要的
写回答
1回答
-
阿莱克斯刘
2022-01-22
在这种情况下的确如你所所,不加provider也同样可以取得数据;但是不加provider会造成另一个问题,就是数据发生变化以后,数据的变化不能反映在react生命周期中。所以,如果需要对数据进行绑定还是需要添加provider。而另一种更好的解决方式就是使用redux来处理数据,redux是课程重点,在课程中有详细的讲解。
10
相似问题