my.checkbeforeaddorder(object object)
交易链路依赖 sourceid
,基础库版本 2.8.13 之后才会返回sourceid
,请确保基础库版本不低于2.8.13。
基础库 或更高版本; 若版本较低,建议采取 兼容处理。
小程序开发者工具: 支持。 3.7.2 以上版本开始支持
主体: 企业支付宝小程序 、 个人支付宝小程序
适用于接入小程序交易组件的小程序在创建订单前进行调用。
object object
属性 | 类型 | 默认值 | 必填 | 描述 |
---|---|---|---|---|
success | function | - | 否 | 调用成功的回调函数。 |
fail | function | - | 否 | 调用失败的回调函数。 |
complete | function | - | 否 | 调用结束的回调函数(调用成功、失败都会执行)。 |
success 回调函数
参数
object res
属性 | 类型 | 兼容性 | 描述 |
---|---|---|---|
requireorder | number | - | 是否需要创建交易组件订单, 1 表示需要,0表示不需要 |
sourceid | string | 基础库: 2.8.13 | 订单跟踪id,用于营销会场、直播间等公域场景的订单归因,创建订单时需要传入 |
sceneid | string | 基础库: 2.8.13 | 公域场景标识。有以下几种值:1039 代表消费圈;1022 代表直播(直播间、回放、生活频道等);0000 代表其他场景 |
fail 回调的参数为 object,error
属性为错误码,errormessage
属性为错误消息。
错误码 | 错误消息 | 凯发app官方网站的解决方案 |
---|---|---|
11 | 服务异常请重试 | 引导用户进行重试 |
my.checkbeforeaddorder(object object)
page({
checkbeforeaddorder() {
if (my.caniuse('checkbeforeaddorder')) {
my.checkbeforeaddorder({
success({ requireorder, sceneid, sourceid }) {
// 基础库 2.8.13 开始支持 sourceid 和 sceneid
if (requireorder === 1) {
// success 为异步回调,请在回调里完成创建订单操作(注意执行顺序,避免在回调执行前进行订单创建),否则有可能造成结果未返回导致使用条件判断错误
}
},
fail({ error, errormessage }) {},
complete() {},
})
}
}
});
- tip
requireorder
、sceneid
和sourceid
参数在success
异步回调中返回,需要确保依赖这些参数的逻辑在success
回调中执行,避免取不到参数值的情况。