为什么当状态发生突变时mapStateToProps返回空对象?

亚历山大·塔塔里诺夫(Oleksandr Tatarinov)

我创造行动

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)

        }

我映射状态

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)返回空对象{}。

在此处输入图片说明

你能告诉我我错了吗?在我看来,一切都正确地存储了,但是initialState变成了道具。

奥斯蒂

redux操作kidsLoad是异步的。尝试console.login登录componentDidUpdate

componentDidUpdate(){
    console.log(this.props.kidsTabData)
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么在gson.toJSon时返回空对象

为什么MyBatis返回空对象的集合?

为什么 jQuery val() 返回空/对象

为什么我的Ajax请求从wordpress返回空对象?

为什么我的JavaScriptSerializer返回空的json对象?

为什么在TypeError上的JSON.stringify返回空对象

为什么req.body不断返回空对象?

为什么HashMap方法返回空对象引用?

为什么使用对数刻度时Altair返回空图表?

当存在注释时,为什么getDeclaredAnnotations()返回空列表?

为什么在Unity 5.3的对象类中使用setter和getter时返回空的JSON字符串?

为什么GetAllActorsOfClass返回空?

为什么可以突变状态的浅表副本?

当我在反应中设置其他对象的状态时,为什么我的数组值会发生变化?

当返回类型是表名时,为什么PostgreSQL函数返回空列而不是不返回行?

为什么重新加载会在一半时间内返回空状态?

为什么JSON.stringify为似乎具有属性的对象返回空对象符号“ {}”?

当我将由findViewById()返回的View对象作为参数传递给LinearLayout类的addView()时,为什么会发生错误?

为什么Vuex状态返回数组作为对象

为什么我的 Azure Cosmos 查询应该返回许多结果时返回空结果?

当T不是引用时,为什么返回类型为option <T>时不返回空指针

当XPath验证程序返回正确的结果时,为什么XmlNode.SelectNodes返回空列表?

为什么mongodb node.js驱动程序中的insertOne方法会使要插入的对象发生突变?

为什么我的值在数组内发生突变?

为什么 dict 在 dask 中没有发生突变?

每次发生突变时都会出现新对象吗?

Vuex:发生突变,但状态不变

IIS为什么返回空响应?

请求API但返回空,为什么?