在redux中修改反应组件的数据的位置?

时间:2017-04-25 17:52:34

标签: reactjs react-redux

我有一系列报告,其中包含通过redux收到的日期,并希望按月分组,然后按天分组:

January 2017 (header)
15th report 1
     report 2 (also the 15th)
February 2018
1st report 3
4th report 4

我认为我应该将报告分类为一个新的数组/对象,包括月份,然后是几天,以便我可以将它们传递给反应组件,而无需确定某些事情是在同一年的月份或日期。或者我应该稍后对它进行排序,然后在组件级别对其进行评估?

我正在考虑在容器组件的mapStateToProps中为所有这些排序和创建新数组。这是正确的地方吗?

1 个答案:

答案 0 :(得分:1)

我认为mapStateToProps是最好的选择。

早些时候(在reducer中)打破了无副作用规则。稍后(在组件中)必须在componentWillReceiveProps生命周期方法中 - 或者您可能有诱惑将其放在render或由render触发的方法中(这是最糟糕的情况!)。

例外情况可能是多个组件正在使用此数据。在这种情况下,您可能需要重新考虑reducer的数据结构。