fetchChange(url,oldPassword, newPassword) {
let formData = new FormData();
formData.append('tokenId',global.tokenId);
formData.append('oldPassword', oldPassword);
formData.append('newPassword', newPassword);
fetch(url,{
method:'POST',
headers:{
'Content-Type':'multipart/form-data',
},
body:formData,
})
.then((response) => response.json())
.then((responseJson)=>{console.log('123');
if(responseJson.code && responseJson.code=='success') {
Alert.alert(
'提示',
'密码修改成功 !',
[
{text: '返回', onPress: () => {
const {goBack} = this.props.navigation;
goBack();
this.setEnable();
}},
]
)
} else if(responseJson.errorCode){
Alert.alert(
'提示',
responseJson.errorCode == 'incorrect_old_password' ? '原密码不正确' : responseJson.errorCode,
[
{text: '返回', onPress: () => {console.log('Cancel Pressed!');this.setEnable();}},
]
)
} else {console.log('123');
alert('123');
}
}).catch((error)=>{console.log(error);alert('连接服务器出错');this.setEnable();});
}
这样写的一个修改密码请求,但是如果是断网情况如何判断,这样写断网也不会有任何反馈,一定要重新封装吗? 有没有快速点的方法直接在这段代码中修改一下就可以得到断网情况的反馈
最终我用的时 Promise.race 赛跑模式达到目的
_fetchRequest() {
}