1***@qq.com
1***@qq.com
  • 发布:2022-02-14 19:26
  • 更新:2022-02-14 19:26
  • 阅读:408

【报Bug】在拉起微信支付进入微信支付页面之前触发支付成功的回调,导致功能不可用,同一套代码支付宝没有问题,是本地打包

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 19043.928

HBuilderX类型: 正式

HBuilderX版本号: 3.3.5

手机系统: Android

手机系统版本号: Android 10

手机厂商: vivo

手机机型: vivo s5

页面类型: vue

vue版本: vue2

打包方式: 离线

项目创建方式: HBuilderX

示例代码:

支付代码
zfcs(value) {
console.log(this.gid);
let data = { type: 1, pid: this.gid, pway: value, amount: "" };
this.$api.order(
data,
(res) => {
this.closeModal();
},
(res) => {}
);
},

掉取微信支付
uni.requestPayment({
provider: pro,
orderInfo: odi,
success: (succ) => {
setTimeout(() => {
//支付成功后,应该立即刷新会员信息
this.sendPost("update", {}, (e) => {
console.log('update_yes:', e);
if (e.issucc) {
uni.showModal({
title: '支付成功',
content: '感谢您的支持!如果会员没有立即到账,请稍候片刻重启软件,如仍未到账请联系我们的客服人员,再次感谢您的支持!'
});
this.data.updateinfo = e;
uni.setStorageSync("cache.update", this.data
.updateinfo);
succBack(e.vip);
} else {
failBack(e);
}

          }, failBack);  
        }, 2000)  

      },  
      fail: (err) => {  
        failBack(err);  
      }  
    });

操作步骤:

拉起支付
uni.requestPayment({
provider: pro,
orderInfo: odi,
success: (succ) => {
setTimeout(() => {
//支付成功后,应该立即刷新会员信息
this.sendPost("update", {}, (e) => {
console.log('update_yes:', e);
if (e.issucc) {
uni.showModal({
title: '支付成功',
content: '感谢您的支持!如果会员没有立即到账,请稍候片刻重启软件,如仍未到账请联系我们的客服人员,再次感谢您的支持!'
});
this.data.updateinfo = e;
uni.setStorageSync("cache.update", this.data
.updateinfo);
succBack(e.vip);
} else {
failBack(e);
}

          }, failBack);  
        }, 2000)  

      },  
      fail: (err) => {  
        failBack(err);  
      }  
    });

预期结果:

进入微信支付页面支付成功再执行其他方法

实际结果:

在进入微信支付之前已经触发成功回调了,导致不能及时刷新数据,要重新进入app之后更新才生效

bug描述:

本地打包调取微信支付在跳转之前就执行成功回调里面的代码了,而支付宝没有问题

2022-02-14 19:26 负责人:无 分享
已邀请:

该问题目前已经被锁定, 无法添加新回复