**
接口返回状态,状态转换
**
前提是后端接口返回的接口数据中 有状态值 比如 [{id:1,value:’***’ ,status:‘0’ },{id:2,value:’***’ ,status:‘1’ ,{id:3,value:’***’ ,status:‘2’ }]; 需求是将这些状态值转换其他的字符串,比如 status:‘0’ 显示‘正常’,status:‘1’显示’故障’,诸如此类
解决方案:
1.首先声明一个逻辑的转换函数
2.调用这个函数转换
const status = NumberToStatus('后台传入的状态值')
const NumberToStatus = (status) => {
if(status == '0'){
return "正常";
}else if(status =='1'){
return '故障';
}
}
}
// react 写法
handleClickRequest = (index) => {
if( index == 0 ){
index = ''
}else{
index = index - 1
}
// console.log(index)
axios.get('****/bigScreen/getList?stationNo=&lockStatus='+`${index}`).then( (data)=>{
//因为接口暂时为公开接口,不方便透露
console.log(data);
let newdata = data.data.data
this.setState({
renderData : newdata
})
const newTabArr = [];
this.state.renderData.map( (el)=>{
let date = el.stationNo;
let name = el.stationName;
let status = NumberToStatus(el.lockStatus);
console.log(status)
newTabArr.push( {date,name,status} )
this.setState({
data : [...newTabArr]
})
} )
console.log( newTabArr)
} )
const NumberToStatus = (status) => {
if(status == '0'){
return "正常";
}else if(status == '1'){
return '故障';
}else if(status == '2'){
return '断线';
}else if(status == '3'){
return '初始状态';
}else if(status == '4'){
return '空桩';
}else if(status == '5'){
return '满桩';
}else if(status == '6'){
return '空桩预警';
}else if(status == '7'){
return '满桩预警';
}
}
}
// 记得点赞!// 记得点赞// 记得点赞// 记得点赞// 记得点赞// 记得点赞// 记得点赞// 记得点赞// 记得点赞// 记得点赞// 记得点赞