使用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{ //失败
//提示错误
}
})
这样就可以了,数据就更新了