我创建动作
export const KIDS_LOAD = 'KIDS_LOAD';
export const kidsLoad = (data) => ({
type: KIDS_LOAD,
payload: data ,
});我创建了减速器
import { KIDS_LOAD } from '../customActions/KidsActions';
export default (state = {}, { type, payload }) => {
if (type === KIDS_LOAD) {
return { ...state,
img: payload.img,
kidsInfo: payload.kidsInfo
};
}
return state;
}我派人行动
componentWillMount() {
this.props.setSidebarVisibility(true);
const { kidsLoad, record } = this.props;
kidsLoad({
img : 'https://s18670.pcdn.co/wp-content/uploads/care_about_grades_middle_school.jpg',
kidsInfo: {
kidName : 'Sasha',
kidAge : '19',
kidHandType : 'Right',
kidGender : 'Boy',
}
})
console.log( this.props.kidsTabData)
}I映射状态
const mapStateToProps = state => ({
kidsTabData: state.kidsReducer,
isLoading: state.admin.loading > 0,
});
export default connect(mapStateToProps, { setSidebarVisibility, kidsLoad })(withStyles(styles)(MyLayout));存储已变异

但是console.log( this.props.kidsTabData)返回空object {}。

你能说出我哪里错了吗?在我看来,所有的东西都能正确地放到商店里,但initialState却能拿到道具。
发布于 2019-02-11 01:51:40
redux操作kidsLoad是异步的。在componentDidUpdate中试用console.log
componentDidUpdate(){
console.log(this.props.kidsTabData)
}https://stackoverflow.com/questions/54618263
复制相似问题