最近在研究ANTDESIGNPRO的源码,发现他们代码中有使用childContextTypes和getChildContext,而react官网上,如果你希望使用应用程序更加稳定,就不要使用上下文(context)。这只是一个实验性的API,并且可能在未来的React版本中移除。请问下为什么?还是理解的不对?以下为示例代码staticchildContextTypes={location:PropTypes.object,}getChildContext(){const{location}=this.props;return{location};}
2 回答
qq_笑_17
TA贡献1818条经验 获得超7个赞
理解是对的。但是在组件结构很深的情况下,context传值方便很多。react-redux,react-router为了更少的侵入业务代码。也是使用context传值的。业务代码,将一些全局信息(比如用户登录信息,配置信息放在根组件),通过context传递会很方便
慕姐4208626
TA贡献1852条经验 获得超7个赞
在多级嵌套的情况下,用props做父子组件之间的交互很繁琐,而且代码也不优雅,一种方案是使用react-redux,通过action、reducer、middleWare实现交互,另一种就是适用context,但是context是类似于全局变量的东西,官方建议最好别用,react-redux就是context很好的封装实现
添加回答
举报
0/150
提交
取消
