美文网首页
react中的context为什么存在以及使用方法

react中的context为什么存在以及使用方法

作者: 该用户太帅没有设置昵称 | 来源:发表于2017-08-12 11:36 被阅读0次

context为什么存在以及使用方法

在react中如果父级组件向子级组件传递state状态的时候,需要在子组件上添加一个属性里面就是需要传递的状态的值(代码如下所示)

<WrappedComponent data={this.state.data}> 

子组件在接收传递过来的值的时候,需要通过props接收(props.data)里面的data就是父级组件设定的属性名

this.props.data//接收一个data属性值

所以在react真实项目中,组件不会单纯的只有两三个,组件太多而且需要一个状态在不同的组件层级中显示相同的状态,传递state就相当的麻烦。所以就需要将这个状态放在一个公共的地方进行共享,React.js的context就是这么一个东西,某个组件只要往自己的context里面放了某些状态,这个组件下的所有子组件就可以直接访问这个组件而不需要通过中间组件进行传递,但是父组件访问不到。

在父组件中定义

static childContextTypes={//验证getChildContext返回的对象
    themeColor=PropTypes.string
}
getChildContext(){//返回的对象就是context
    return{temeColor:this.state.color}
}

在子组件中定义和调用

static contextTypes={//子组件中想要获取context中的内容就必须这样进行定义
    themeColor=PropTypes.string
}
//this.context.themeColor这样获取context的值

相关文章

  • react中的context为什么存在以及使用方法

    context为什么存在以及使用方法 在react中如果父级组件向子级组件传递state状态的时候,需要在子组件上...

  • react 中的 context 使用方法

    Contex 的 API 在新 react 版本中变动还是很大的,我们这里通过一个实例为大家讲解一下,如果以前没有...

  • 『react』Context 使用方法

    注:若使用了脚手架可以单独写一个conext文件引入,使用更简单,使用方法如下:

  • React中不常用的功能——Context

    React中不常用的功能——Context Context React源码版本16.8 基本用法 跨层级通信 Co...

  • React-深入探究Context(1)

    前言 React组件中的Context与Android中的Context类似,都可以理解为上下文。而React中的...

  • React Hooks简易实现状态管理

    React Hook中提供的 useContext 、 useReducer 以及 context API可以实现...

  • 2018-08-08

    React 高级指南 React 新版上下文(context) context ?答:上下文(Context) 提...

  • react中的context

    在React中,数据可以以流的形式自上而下的传递,每当你使用一个组件的时候,你可以看到组件的props属性会自上而...

  • react 中的context

    context 表示上下文,将好像组件里面的全局变量一样,一般我们不使用这个属性,因为这个有可能损坏组件。指定 c...

  • React 中的Context

    当我们想在组件树内传递props,并且不想让props流经树的每一层,context会让我们做到这一点。conte...

网友评论

      本文标题:react中的context为什么存在以及使用方法

      本文链接:https://www.haomeiwen.com/subject/nvndrxtx.html