下单支付如果失败的情况下怎么处理
来源:12-6 【购物模块完成】购物车下单

慕粉3831983
2022-10-27
dispatch(checkout(jwt))
navigate('/placeOrder');
老师你好,这节课你的代码里下单支付后直接跳转页面了,dispatch这里是异步操作,发送了checkout就直接执行下面那条语句了,如果下单支付有错误了,是怎么处理的?
后面有网络请求处理的时候,出错的情况都是没有处理的。
如何实现在原来的页面上弹出错误信息(message.error(‘错误消息’));而不是之前那种直接用一段错误div替换掉整个页面
写回答
1回答
-
阿莱克斯刘
2022-11-01
在这里课程偷了个懒,没有处理支付失败的情况。对于支付失败,我们有三个方案。1. 在thunk中添加一个支付状态(成功、失败)的state,然后在支付页面中使用useEffect来监听支付状态,通过支付状态变化来判断页面跳转。2.添加一个中间件来处理支付请求的副作用,在处理副作用的时候进行页面重定向。3. 干脆把支付请求从redux中剔除,直接在页面发送请求,在页面处理请求结果。00
相似问题