我有两个组成部分:
class A extends Component { }
class B extends Component { }
A类将一些数据加载到store
中,然后单击A类中的按钮将更改到B类的路径
在B类中,我尝试使用mapStateToProps
访问商店,但是A类放入商店的数据已变空。
console.log()
mapStateToProps显示数据,但B类中的数据显示空JSON。
B类不会在商店发送任何动作。它只需要商店中已有的数据。
两个组件都在同一个Provider
下。
不确定可能是什么问题。
A类:
class A extends Component {
componentWillMount() {
const { id, loadAction } = this.props;
loadAction(id);
}
render() {
....
<Button label="Label" href="/b"/>
}
}
const mapStateToProps = (state) => {
console.log("State: " + JSON.stringify(state));
return {
id: state.id,
details: state.details,//populated after loadAction
}};
const mapDispatchToProps = {
loadAction: loadAction,
};
export default connect(mapStateToProps, mapDispatchToProps)(A);
&#13;
B组:
class B extends Component {
render() {
const { details } = this.props;
//details is null here
}
}
const mapStateToProps = (state) => {
console.log("State: " + JSON.stringify(state));
return {
details: state.details,
}
};
export default connect(mapStateToProps)(B);
&#13;