当前位置: 首页 > article >正文

promise的catch放在then前面的场景

我们知道Promise 的 .then() 和 .catch() 方法的链式调用顺序通常是先 .then() 后 .catch()。这是因为 .then() 方法用于处理成功的情况,而 .catch() 方法用于处理失败的情况。.catch() 方法会捕获前面所有 .then() 链中抛出的异常,以及在 Promise 执行过程中发生的任何错误。
在一个失败重试场景中我把catch放在then前面,代码逻辑会很简单:

...
const pause = (duration) => new Promise((reslove) => setTimeout(reslove, duration));
...
dosomething()
	.catch(e=>{
		console.log("frist fail");
		pause(delay).then(()=>{
			console.log("second try"); 
			dosomething()
				.then(()=>{console.log("retry succ");});
			})
	.then(()=>{dootherthing();})
	.catch(e=>{console.log("fail");})

http://www.kler.cn/a/377951.html

相关文章:

  • 十六届蓝桥杯嵌入式资料 看这个就够了(附CSDN开源程序)
  • 多线程--简单模拟实现线程池并使用--Java
  • 408——计算机网络(持续更新)
  • 杨传辉:云+AI 时代的一体化数据库|OceanBase发布会实录
  • (七)JavaWeb后端开发——Maven
  • 【设计模式系列】组合模式(十二)
  • OpenGL入门003——使用Factory设计模式简化渲染流程
  • 从零开始的c++之旅——继承
  • SMTP协议,即简单邮件传输协议
  • 20241031 Apache2修改日志里面的时间格式
  • SQL Server 2008 R2 详细安装教程及错误解决教程
  • 数据结构-链表【chapter1】【c语言版】
  • Darknet 连接教程
  • 安全性测试
  • sql server复制一张表(表结构或表数据)SQL语句整理
  • stl_stack/queue
  • 基于SSM+小程序的计算机实验室排课与查询管理系统(实验室2)
  • Golang | Leetcode Golang题解之第526题优美的排列
  • 无人机维护保养、部件修理更换技术详解
  • uniapp:启动界面关闭时长控制
  • RGA DEMO 下部
  • 数据结构(8.7_1)——外部排序
  • spring 学习路线梳理(二)注解
  • 搜维尔科技:数据手套|动作捕捉|模拟仿真|VR交互解决方案
  • Unity3D UI 拖拽
  • 可商用的免费字体阿里巴巴普惠字体