react 两个组件之间通信具体解决方法,项目较大,必须要redux

我有两个组件,一个显示数据,一个负责选择显示的数据。
一个就是echarts,一个是日期选择控件,我想实现日期选择的试试,从后台返回的值,返回到echarts中?
请问如何用redux实现这个过程?
Container 下面两个子组件,echarts和datapick。

阅读 3.1k
2 个回答

action,reduce这些概念不知道你了不了解,在知道这些的前提下。使用react-redux辅助组件通信。
主要是利用好connect([mapStateToProps], [mapDispatchToProps], [mergeProps], [options]),这个函数。

mapStateToProps函数是用来获取值的,即在echarts组件这边获取你想要的数据。
mapDispatchToProps函数是用来触发你的action的,也就是在你的选择日期这边,去调用这个函数,去触发相应的状态。

之前写过相关的文章可参考下。
https://segmentfault.com/a/11...

这里不讨论使用redux的必要性。

redux做组件间通信的核心思想就是维护一个全局数据源,由用户操作/逻辑负责维护这个数据源,页面根据数据源的内渲染。

具体到你这个问题,可以把日期或者echartsoption作为共享的数据放到redux中,然后通过日期选择控件的改变来触发redux中数据的改变,在echarts这里接收改变,根据数据绘制图表。

具体的实现网上有很多了,但就你这个需求来看不会比示例的TodoList难太多,照着做就可以

推荐问题
宣传栏