退款使用的是pay-button 交易按钮(行业sdk)
准备工作:
在package.json文件添加
"industrySDK": true
直接放在最上面就可以
添加完重启编辑器!!!
在使用组件页面判断是否支持组件
if (tt.canIUse("industrySDK.pay-button")) {
console.log('支持pay-button组件')
}
直接复制使用-退款按钮代码
<pay-button
mode="{{1}}"
order-id="{{orderId}}"
order-status="{{refundStatus}}"
bind:refund="handleRefund"
bind:error="onError"
refund-id="{{refundNo}}"
/>
mode介绍
mode为1是----已下单,用于退款场景
mode为2是----未下单,用于下单场景order-id介绍
开发者订单系统的交易订单号,退款的时候该属性必传,要拿交易订单号去退款。
order-status介绍
退款的时候细分状态,因为退款的时候有 (申请退款,退款中,退款成功,退款失败),
这些都是后端返回的状态,切记让后端根据抖音规则返回状态,自己也能转,就是多个地方使用不方便!
抖音规则: 0:继续支付1:申请退款2:退款中3:退款成功4:退款失败退款的时候该属性必传
bind:refund介绍
这个就是点击申请退款以后的回调,不是必填
bind:error介绍
这个比较重要,退款出现报错都会在这个方法里打印。
常见错误是开发者调用扩展点失败...一般遇到扩展点相关的直接问后端解决
bind:error错误码地址如下抖音pay-button组件退款常见错误码https://developer.open-douyin.com/docs/resource/zh-CN/mini-app/develop/component/industry/trading-system/pay-button-sdk#16b1f15b