[react] 说说Context有哪些属性?
context属于一种解决组件间层级过多传递数据的问题,避免了层层嵌套的通过props传递的形式,同时对于不需要使用到redux时,是一种解决方案,关于组件的复用性变差的问题,我觉得是可以通过高阶组件和context配合来解决的,因为react-redux使用的就是这样的形式;
主要的形式:createContext(value):创建一个context实例;其中的参数为当前数据的默认值,只有没在Provider中指定value时,才会生效;
Context.Provider:生产者,数据提供方;通过value属性来定义需要被传递的数据
Context.Consumer:消费者,数据获取方;根据是函数组件还是class组件,有不同的使用形式;class组件可以指定contextType来确定要使用哪一个context对象的值,函数组件需要使用回调函数的形式来获取context的值;需要显示的指定context对象;
个人简介
我是歌谣,欢迎和大家一起交流前后端知识。放弃很容易,
但坚持一定很酷。欢迎大家一起讨论
主目录
与歌谣一起通关前端面试题