位置: IT常识 - 正文

项目中报错 Uncaught (in promise)(java项目报错)

编辑:rootadmin
项目中报错 Uncaught (in promise) 项目中报错 Uncaught (in promise)一、问题:当你调用 Promise.reject() 回调的时候,Chrome 控制台中出现一条警告消息“Uncaught (in promise)”。

推荐整理分享项目中报错 Uncaught (in promise)(java项目报错),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:项目报错500,project error unknown modules,项目报错但是里面java文件不报错,项目报错但是里面java文件不报错,项目启动报错,项目中报错的点,项目报错但是里面java文件不报错,项目报错但是里面java文件不报错,内容如对您有帮助,希望把文章链接给更多的朋友!

例如你简单封装axios的响应拦截器的时候:

// 响应拦截service.interceptors.response.use((res)=>{ const code:number=res.data.data.code if(code!=200){ return Promise.reject(res.data.data.msg) } return res.data.data},(err)=>{ console.log(err);})以一个登录提交的方法为例,当你只使用.then,并且走到了 return Promise.reject() 的区间:

(我是在学ts的时候遇到的,如果你是在js里面遇到问题的话,只需要把类型去掉看就可以了)

const submitForm = (formEl: FormInstance | undefined) => { if (!formEl) return; formEl.validate((valid) => { if (valid) { login(data.ruleForm).then((res:object)=>{ console.log(res); }) } else { console.log("error submit!"); return false; } }); };

控制台错误如图:

二、原因:发生这种情况就是因为您没有将捕获处理程序附加到 then 返回的 promise 中方法,因此在 promise 拒绝时没有处理程序。项目中报错 Uncaught (in promise)(java项目报错)

如果onRejected处理程序没有显式地提供给.then(onResolved, onRejected)方法,JS会自动提供一个隐式的。它看起来是这样的:(err) => throw err。自动生成的处理程序将在其回合中抛出。

在 promise 链中,可以使用 catch 捕获此错误方法回调,但如果不存在,JavaScript 引擎将像处理任何其他 Uncaught Error 一样处理错误,并在这种情况下应用默认处理程序,这会导致您在控制台中看到输出。

三、处理方法:只需要在调用的时候在.then后面加上.catch对异常情况进行捕获并进行处理即可。

还是上面那个登录方法

1.这是使用.then的处理方法

const submitForm = (formEl: FormInstance | undefined) => { if (!formEl) return; formEl.validate((valid) => { if (valid) { login(data.ruleForm).then((res:object)=>{ console.log(res); }) .catch((err:any)=>{ console.log(err); }) } else { console.log("error submit!"); return false; } }); };

2.这是使用 async 和 await 进行修饰的处理方法(需要用到 try catch)

const submitForm = (formEl: FormInstance | undefined) => { if (!formEl) return; formEl.validate(async (valid) => { if (valid) { try{ let res = await login(data.ruleForm) console.log(res); }catch(err:any){ console.log(err); } } else { console.log("error submit!"); return false; } }) };

此时控制台输出的就是你的处理结果,不会再出现 Uncaught (in promise) 了。

参考:https://stackoverflow.com/questions/42460039/promise-reject-causes-uncaught-in-promise-warning

本文链接地址:https://www.jiuchutong.com/zhishi/293075.html 转载请保留说明!

上一篇:bc命令 数字计算器(ab计数器指令程序)

下一篇:前端401错误 & 解决方法:响应拦截器(前端报405错误)

  • 高新技术企业产品是什么意思
  • 收到社保局退回的社保费
  • 应交印花税会计分录
  • 劳务发票打款用途写什么
  • 税务异常有哪些类型
  • 增值税优惠政策3%降1%
  • 银行存款利息收入要交增值税吗
  • 设备使用率怎么计算公式
  • 个人所得税专项扣除子女教育标准
  • 费用的完成率怎么计算
  • 厂房消防安装图
  • 租赁汽车油费可以抵扣吗
  • 转账支票必须对着开发票单位吗?
  • 管道租赁合同怎么写
  • 增值税发票抵扣联丢失怎么办
  • 开票未收到款会计分录
  • 为何要简并增值税税率?
  • 外埠纳税人经营地报验登记税务管理论文
  • 汇算清缴调增的利润要进未分配吗
  • 应交增值税会计科目
  • 车间固定资产修理费
  • 可抵扣亏损递延所得税资产
  • 公司利润如何分配到个人
  • 个人股权转给公司要交个税吗
  • 如何阻止windows10升级到11
  • 汇算清缴专项附加扣除去年忘记填的能补填吗?
  • PHP:oci_set_edition()的用法_Oracle函数
  • 房屋修理费用
  • 负债期末余额为负数写在哪方
  • 简单谈谈中国法律史的感受
  • php二维数组的遍历
  • php json
  • yii2框架结构
  • 企业收到对外投资收益交所得税吗
  • 直接材料成本差异账户在平时登记贷方登记
  • php获取文件内容的函数
  • 金碟怎么初始化
  • 应付票据贴现是负债吗
  • 进口消费税如何计税
  • 工程公司项目管理部管理制度
  • 2022年最新版微信
  • 融资租赁首付租金定义
  • 有限公司能变更成个体工商户吗
  • 计提应交增值税怎么做账务处理
  • 企业长期零申报
  • 代扣代缴的增值税算进项税吗
  • 费用利润率计算公式是怎样的?
  • 事业单位扶贫费用怎么做账
  • 新成立的公司怎样建账
  • 银行承兑汇票利息归谁
  • 资产负债表和科目余额表怎么核对
  • 货款还没收到有违法所得吗
  • 托管服务费开什么发票
  • 个体工商户如何注销网上
  • 会计借方和贷方有哪些科目
  • mysql指定查询
  • mysql删除的数据恢复
  • fedora workstation怎么安装
  • bios界面如何进入
  • linux如何拨号
  • mac快捷功能
  • win10驱动备份在哪里
  • win7共享失败
  • windows蓝牙被禁用
  • linux 746
  • 帝国cms列表页隐藏部分文章
  • 一个简单的飞机
  • windows visual studio openGL开发环境配置
  • 记录心率
  • nodejs fs.open
  • unityui播放视频
  • android屏幕适配的五种方式
  • javascript几种类型
  • js window.screen
  • android高级开发实战------ui、ndk与安全
  • 国家税务总局2012年20号公告
  • 税务青年要担当
  • 山东省税务局在哪
  • 济南高新区国家税务局
  • “老师你好”
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设