React Native 中 网络访问 返回数据加载的问题Util

来源:互联网 发布:西安华山世知酒店 编辑:程序博客网 时间:2024/05/01 02:13

使用Util封装网络访问的话就会涉及到callBack的数据在本页面加载 如果此时我们直接在
MyNetWork.post(UrlF,formData,CommonData.header,function (callBack){
var jsonData= JSON.parse(callBack);
var stringData = callBack;
//接下来是数据的存储,转化

if (jsonData.status == "success"){    //成功            for (var i = 0;i<jsonData.content.length;i++){                //这个for里面是我项目的数据解析,就不写了,大家看的懂意思                dataArr[i] = dataa;                console.log('######'+dataa)            }            this.setState({                ListData:dataArr,            });        }else{                               //失败            //提示错误        }    })

如果直接这样写,会报错:this.setState 不存在.这是因为此时的this是MyNetWork文件,而不是当前文件的,解决的办法就是,把this传过去

var netthis = this;MyNetWork.post(UrlF,formData,CommonData.header,function (callBack){            var  jsonData= JSON.parse(callBack);            var  stringData = callBack;            if (jsonData.status == "success"){    //成功                for (var i = 0;i<jsonData.content.length;i++){                    //这个for里面是我项目的数据解析,就不写了,大家看的懂意思                    dataArr[i] = dataa;                    console.log('######'+dataa)                }                netthis.setState({                    ListData:dataArr,                });            }else{                               //失败                //提示错误            }        })

这样就可以了,数据就更新了

0 0
原创粉丝点击