MobX Store:Axios调用成功,但获取:获取数据信息时出错:TypeError:无法读取null的属性'data'

时间:2017-05-10 11:50:07

标签: reactjs axios mobx mobx-react

我正在使用MobX进行React的状态管理。我实际上让它工作 - 数据从父级传播到父级的子级,使用父级的@observer,并从商店传递道具。太棒了!

除了..数据在那里 - 我可以在每个孩子中console.log,但axios.get内的stores.js调用失败(即使它确实传递了数据?)< / p>

我的stores.js

import { observable, action, computed } from 'mobx';
const axios = require('axios');

class Store {
    @observable dataForParent;
    loadParent = () => {
        let that = this;
        axios.get("/api/parentdata/snapshot").then(function(response){
            console.info("Received parent info "+ (new Date()).toString());
            that.dataForParent = response.data;
            console.log(response.data);
        }).catch(function(error){
            console.error("Error getting parent info:" + error.toString());
        });
    };
}

export default Store;

正确地说,它设法将数据传递给<Parent />组件。

但是,它永远不会呈现<Parent />组件,因为它表示loadParent()函数实际上会捕获错误。

错误是:Error getting parent info:TypeError: Cannot read property 'data' of null

这对我来说没有多大意义:我可以console.log/api/parentdata/snapshot界面收集包含其他对象的整个对象。这意味着呼叫是成功的,而不是失败。

为什么会失败并阻止整个应用程序?数据传播到我的React类。这对我来说似乎很奇怪。

0 个答案:

没有答案