收藏
回答

wx.getEnterOptionsSync() 的数据异常?

复现步骤:

  1. 当从 a 页面第一次进入 b 页面时,场景值为 1001
  2. 从 b 页面进入另一个小程序后返回,场景值为 1038
  3. 从 b 页面返回 a 页面,再进入 b 页面,场景值还是 1038,且 referrerInfo 也是上一步一样的内容

代码:

  onShow() {
    const options = wx.getEnterOptionsSync()
    console.log(options)
    // 如果是从收银台小程序返回来
    if (options.scene === 1038 && options.referrerInfo.appId === '') {
      const { extraData } = options.referrerInfo
      if (!extraData) {
        wx.showToast({
          title: '支付取消',
          icon: 'none',
        })
        return
      }
      const { code } = extraData
      if (code === 'success') {
        wx.showToast({
          title: '支付成功',
        })
        setTimeout(() => {
          wx.navigateBack()
        }, 2000)
      } else if (code == 'cancel') {
      } else {
      }
    }
  },
回答关注问题邀请回答
收藏

2 个回答

  • 一路向北
    一路向北
    2023-10-03

    这个问题咋解决呢


    2023-10-03
    有用
    回复 1
    • 谦虚
      谦虚
      2023-11-07
      只能在页面内自己再定义一个变量来存储状态了,比如 isBack,然后同时判断两个条件
      2023-11-07
      1
      回复
  • 只剩₁块₅了!
    只剩₁块₅了!
    2023-09-22

    我也碰到了这个问题,解决了吗?

    2023-09-22
    有用
    回复 1
    • 谦虚
      谦虚
      2023-11-07
      只能在页面内自己再定义一个变量来存储状态了,比如 isBack,然后同时判断两个条件
      2023-11-07
      回复
登录 后发表内容