1、如何点击分享的页面进来,授权后跳转到当前页面

可以在授权成功后,将openid、头像、昵称入库成功之后,标记一下,及getStorageSync

  // 通过code获取openid
  getUserOpenId(code) {
    let postData = {
      code,
      appid: app.globalData.appid,
      parentUserid: wx.getStorageSync('parentUserid') || ''
    }
    app.requestData('您的接口', {
      ...postData
    }).then((res) => {
      if (res.result === 'success') {
        // wx.setStorageSync('sessionKey', res.data.sessionKey) // 缓存sessionKey
        wx.setStorageSync('openid', res.data.wxId) // 缓存openid
        this.setData({
          userinfoObj: {
            ...this.data.userinfoObj,
            openid: res.data.wxId
          }
        })
        console.log('wxId', res.data.wxId)
        this.insertUserInfo()
      } else {
        app.showTip(res.msg)
      }
    })
  },
  // 将 openid 头像、昵称 入库
  insertUserInfo() {
    app.requestData('您的接口', {
      nickName: this.data.userinfoObj.nickName,
      openid: this.data.userinfoObj.openid,
      avatarUrl: this.data.userinfoObj.avatarUrl,
      parentUserid: wx.getStorageSync('parentUserid') || ''
    }).then((res) => {
      if (res.result === 'success') {
        var value = wx.getStorageSync('urlWithArgs')
        app.checkIslogin(function () {
          if (value !== '') {
            wx.redirectTo({
              url: value,
            })
          } else {
            wx.switchTab({
              url: '../mine/index',
            })
          }
        })
      } else {
        app.showTip(res.msg)
      }
    })
  },

2、在分享的页面 onLoad函数

  onLoad: function (options) {
    if (options.q) {
      var qrUrl = decodeURIComponent(options.q);// 获取到二维码原始链接内容
      var id = qrUrl.split('?')[1].split('&')[0].split('=')[1];//这里是获取分享链接上的参数id
      // var flag = qrUrl.split('?')[1].split('&')[1].split('=')[1];
      this.setData({
        orderid: id,
        flag: 0
      })
    } else {
      this.setData({
        orderid: options.id,
        flag: options.flag
      })
    }
    this.queryorderDetail(this.data.orderid)
    //详情页的路由信息 
    const pages = getCurrentPages();
    const currentPage = pages[pages.length - 1]
    //路由
    const url = currentPage.route;
    //路由参数
    const opt = currentPage.options;
    var urlWithArgs = `/${url}?`
    urlWithArgs += `id=${opt.id}&flag=0`//这里就是授权之后 跳转到当前页面
    wx.setStorageSync('urlWithArgs', urlWithArgs);
    wx.setNavigationBarColor({
      frontColor: '#ffffff',
      backgroundColor: '#3066FE',
      animation: {
        duration: 400,
        timingFunc: 'easeIn'
      }
    });
    let that = this;
    wx.getSystemInfo({
      success: function(res) {
        //导航栏高度
        that.setData({
          windowHeight:res.windowHeight
        })
      }
    });
  },

 

Copyright © 2024 矜持i
Powered by .NET 9.0 on Kubernetes