H***@geely.com
H***@geely.com
  • 发布:2024-08-08 21:05
  • 更新:2024-08-09 10:28
  • 阅读:100

uni.request有情况会走到 `catch`分支吗?

分类:uni-app
uni.request({  
    url: requestUrl,  
}).then(res => {  
    let [error, data] = res  
    console.log('error', error);  
    console.log('success', data);  
}).catch(err => {  
    console.log('request fail', err);  
});

上面这段代码有情况会走到 catch分支吗?有的话什么时候会走到?

我调试的情况来看,应用服务器成功返回响应数据时,会走到then分支,数据存放在为data中。如果没有网络,也会走到then分支。

2024-08-08 21:05 负责人:无 分享
已邀请:
LGG233

LGG233 - others

说明then中返回的res的格式可能有问题,比如res返回的是null,对null使用赋值解构会导致异常,从而进到了catch。

H***@geely.com

H***@geely.com (作者)

也就是说,只有在 then 中throw 一个 Error 的时候,才会走到catch分支, 是吧?

  • LGG233

    是的,在then中发生了异常代码不会往下执行,并且会进入到catch

    2024-08-09 11:39

要回复问题请先登录注册