.then()
中的回调可以传入两个回调函数,分别接受第一个参数和第二个回调参数- 如果第一个失败的回调被错误处理回调函数捕获了,那么下面的一个
.then()
回调会接受一个undefined正常回调值,这不是我们想看到的结果。解决方法就是在上一个失败回调中返回一个空白的Promise对象。
fetch('/api1/search/users?id=1').then(
reponse => {
console.log('连接服务器成功');
return response.json(); // response.json()返回了一个Promise对象
},
error => {
console.error('链接服务器失败',error);
return new Promise( ()=>{} ) // 这里返回新的promise是为了防止下面的`.then()`传入undefined,导致下面的.then正常执行
).then(
response => console.log('返回数据成功');
error => console.error('返回数据失败',error);
)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。