我正在从Rest API,Container和Presentational组件中加载数据。Redux&React:调用componentDidUpdate,但不会发生重新渲染
集装箱
componentWillMount() {
this.props.load();
}
componentDidUpdate() {
console.log('updated');
}
render() {
let view;
view = this.props.data ? (<Foo data={this.props.data} />) : (<H2>Loading</H2>)
return (
<div>
{view}
</div>
)
}
load
- 获取数据,并在成功加载减速分派的事件。
@Connect
function select(state) {
const { data } = state.modules;
return {
data: data
};
}
export default connect(select, {
load: actions.data.load
})(ContainerComponent);
据我了解,在诉讼被分派和Container
组件接收更新的存储数据,重新呈现应该发生。
这是奇怪的,componentDidUpdate
,根据文档,被称为组件接收更新道具和重新渲染。
但我的Foo
(愚蠢)组件从来没有出现,即使一切都成功派遣没有状态突变。
可能是什么原因?谢谢!
你可以分享你的代码中你实现'mapStateToProps'和连接'组件与redux存储的部分吗? – Timo
@Timo更新了问题 – knitevision
也许this.props.data始终是false?你能发布更完整的代码吗? –