小程序
小游戏
企业微信
微信支付
扫描小程序码分享
requestPayment的success和fail都有执行redictTo跳转其他页面,也就是说唤起了支付,不管支不支付成功都会跳转。
现在看到服务器日志里不少用户,点击支付按钮,支付后大概1分钟才回到小程序页面,但没有立即执行success,而是用户再次点了支付按钮后才执行success。
很奇怪,有没有相同问题的?
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
需要用户点击完成或者返回才会执行回调。如果用户直接物理返回是不会执行的。如果你是想回到这个页面不管是否成功都跳转页面,那你需要自己做个标记,看是否唤起过支付,再做跳转
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
我是这样做的:(伪代码)
setInterval(()=>{ this.calcTime(); if(i%3) this.chkPayment(); i++; },1000);
其中calcTime是计算剩余时间,页面进行倒数;
i是计算第几次执行,由于不需要太过精准,所以calcTime里面也是通过i来计算过去多少秒,另外就是大概3秒执行一次chkPayment;
chkPayment 就是检查服务器支付状态情况。
*另外onHide的时候记得销毁setInterval。
我自己实测过很多次,用户支付完点击完成时,小程序页面已经跳转走了。因为计时器一直在运行,包括用户支付途中。
至于你说的success和fail里,我都没跑任何代码....
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
需要用户点击完成或者返回才会执行回调。如果用户直接物理返回是不会执行的。如果你是想回到这个页面不管是否成功都跳转页面,那你需要自己做个标记,看是否唤起过支付,再做跳转
我是这样做的:(伪代码)
setInterval(()=>{ this.calcTime(); if(i%3) this.chkPayment(); i++; },1000);
其中calcTime是计算剩余时间,页面进行倒数;
i是计算第几次执行,由于不需要太过精准,所以calcTime里面也是通过i来计算过去多少秒,另外就是大概3秒执行一次chkPayment;
chkPayment 就是检查服务器支付状态情况。
*另外onHide的时候记得销毁setInterval。
我自己实测过很多次,用户支付完点击完成时,小程序页面已经跳转走了。因为计时器一直在运行,包括用户支付途中。
至于你说的success和fail里,我都没跑任何代码....