React组件不会重新渲染另一个容器的redux状态更改

时间:2017-06-13 21:01:19

标签: google-maps reactjs react-redux google-maps-react

我有两个容器,分别是:FilterContainerMapContainer

FilterContainer的状态为:selectedFitlers,只要用户点击复选框列表中的内容,就会更新。

MapContainer 应该做什么,查看state.filterListContainer.selectedFilters数组并根据该数组显示标记。

但不幸的是,这种情况并没有发生。我看到更改反映在redux状态(通过查看devTools),但不知何故MapContainer没有得到这些更改的通知。我尝试使用componentWillReceiveProps生命周期挂钩,但看不到nextProps获取新值。

以下是MapContainer的代码:

https://gist.github.com/ghoshabhi/a275f923bba4a92b2b1f9dc3fbe09826#file-mapcontainer-index-jsx-L50

我不明白为什么我的容器没有重新渲染或接收有关我的redux商店中状态变化的更新。

欢迎任何帮助/建议/替代方法:)

提前谢谢!

更新 Redux devtools: enter image description here

1 个答案:

答案 0 :(得分:0)

我查看了你的代码,我注意到在FilterContainer组件中你注释了selectedFilters PropTypes,而它仍然存在于MapContainer组件中。尝试在FilterContainer中对它进行评论,以查看它是否有效。这可能是一个错误类型的问题。