收藏
回答

如何在A页面调用wx.scanCode拿到参数发起异步请求后直接跳转至B页面而不返回A再跳转至B?

API:scanCode

基础库:2.4.4

微信版本号:7.0.4

问题:在A页面呼起扫一扫,在扫一扫的成功回调里发起异步请求,请求的成功回调里navigateTo B页面。总是在调起扫一扫后重回A页面而后才跳转B页面,如何直接跳至B页面?

代码:


jumpPay: function(e) {
        wx.scanCode({
            success(res) {
                let str = res.result
                let q={}
                str.replace(/([^?&=]+)=([^&]+)/g,(_,k,v)=>q[k]=v);
                // q;
                // str = str.match(/qrcode=(\S*)/)[1];
                console.log('扫一扫获得的res',q)
                if(q.qrcode){
                    const getScanQuery = {qr_code:q.qrcode}
                    PayStore.getQueryScanInfo(getScanQuery).then(function(res) { // 发起异步请求
                        if(0==res.data.retcode){
                            let query = {...res.data,...getScanQuery}
                            query = JSON.stringify(query)
                            wx.navigateTo({
                                url: '/pages/pay/payInput?query='+query
                            });
                        }else{
                            console.log('接口回参错误')
                        }
                    }).catch( (error) => {
                        console.log(error)
                    })
                    
                }else{
                   console.log('未获取到qrcode')
                }
            },
            fail(){
                console.log('扫一扫调用失败')
            }
        })
     
    },


回答关注问题邀请回答
收藏

3 个回答

  • 社区技术运营专员-小柿子
    社区技术运营专员-小柿子
    2019-12-12

    麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html

    2019-12-12
    赞同
    回复 4
    • 刘小芳
      刘小芳
      2019-12-13
      机型:Iphone6
      微信版本号:7.0.4
      系统版本号:12.4.3
      (测试过多部手机,表现一致,或与机型无关)
      代码片段: https://developers.weixin.qq.com/s/oW0uYAmn74dV
      2019-12-13
      回复
    • 社区技术运营专员-小柿子
      社区技术运营专员-小柿子
      2019-12-13回复刘小芳
      看了你的代码,这个表现是正常的啊
      2019-12-13
      回复
    • 刘小芳
      刘小芳
      2019-12-16
      看表现确实是正常的,但体验上实际是可优化的,页面的打开次序:A==>扫一扫==>B 才更流畅,希望避免跳回。像微信自己的扫一扫一样,直接识别了二维码跳转至目的页
      2019-12-16
      回复
    • 龙萍🎈
      龙萍🎈
      2019-12-25
      又返回A, A 的componentDidShow就执行了2次
      2019-12-25
      回复
  • 刘小芳
    刘小芳
    2019-12-13

    确实不是机型的问题,尝试把异步请求拿掉直接在 wx.scanCode的成功回调里跳转页面也还是会先回一下原页面。这样体验实际上并不好,页面的打开次序:A==>扫一扫==>B 才更流畅。现在要求教的就是如何避免跳回

    2019-12-13
    赞同 1
    回复
  • 痛快科技
    痛快科技
    2019-12-12

    这个应该是不同机型表现不同

    2019-12-12
    赞同
    回复
登录 后发表内容
问题标签