为了账号安全,请及时绑定邮箱和手机立即绑定

在 js 中如何中止代码往下执行并且不报错求指导!

在 js 中如何中止代码往下执行并且不报错求指导!

婷婷同学_ 2019-09-19 12:21:31
在vue中封装公共的axios配置axios请求响应拦截axios.interceptors.response.use((res)=>{returnres},(err)=>{//接口请求失败后,直接返回失败的PromisereturnPromise.reject(error)})axios(config).then(res=>{//请求成功if(res.code===200){}else{//报个错,所有的错误让下面的catch统一处理throwres}}).catch(err=>{//alert(err.message)//在catch中使用throw,如果catch后面还有then,则只会执行到这里的catch,后面的then不再执行//这个解决的我的问题,但问题是throw会在控制台中输出错误信息,我并不希望它输出错误信息,也不想让它继续往下执行throwerr})大佬们帮忙看下吧,困扰了好长时间了
查看完整描述

2 回答

?
慕的地8271018

TA贡献1796条经验 获得超4个赞

axios(config).then(res=>{
//请求成功
if(res.code===200){
}else{
//报个错,所有的错误让下面的catch统一处理
throwres
}
}).catch(err=>{
//
alert(err.message)
//在catch中使用throw,如果catch后面还有then,则只会执行到这里的catch,后面的then不再执行
//这个解决的我的问题,但问题是throw会在控制台中输出错误信息,我并不希望它输出错误信息,也不想让它继续往下执行
throwerr
})
.then(...)
.then(...)
.thne(...)
.catch(err=>{
//在最后再加一个catch,
//不要throw,阻止错误信息
})
                            
查看完整回答
反对 回复 2019-09-19
?
子衿沉夜

TA贡献1828条经验 获得超3个赞

为啥不用Promise.reject呢?如果你catch住错误后,还想往下传给别的catch.就returnPromise.reject()就可以了
                            
查看完整回答
反对 回复 2019-09-19
  • 2 回答
  • 0 关注
  • 1008 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信