axios笔记一

1.在create-react-app创建的react项目中使用axios,通过本地json数据 模拟前后台交互,所遇到的问题以及解决方法:

将json文件放在mock文件夹下,mock放在跟目录下,通过axios请求,报错404,找不到文件,原因是自动打包工具没有额外构建除了src目录外的文件,

可以将mock文件夹放在public目录下;

同时,因为是请求的本地数据,使用post请求时报错。

2.在componentDidMount中使用axios请求时,成功回调函数中直接使用this.setState()设置数据,不会起作用----》this 未定义,可以先将this保存:


  

componentDidMount(){
        let ts = this;
        axios.get("mock/person.json")
            .then(function(response){
                if(0 === response.data.errorCode){
                    ts.getData(response.data.persons);
                }
            }).catch(function(err){
            console.log(err);
        });
    }
getData(persons){
    this.setState({
        dataSource: persons
    });
}
原文地址:https://www.cnblogs.com/qingxiawu/p/8653464.html