如何识别从其他小程序跳转到另一小程序

如何识别从其他小程序跳转到另一小程序

1.通过场景值判断

当 referrerInfo.scene == 1037 时,就可以判断是从小程序跳转小程序。
referrerInfo 参数也可以写在 onLaunch 里,不过都需要写在 app.js 里

    onShow: function (referrerInfo) {
      wx.showModal({
        title: '提示',
        content: referrerInfo.scene.toString(),
        success: function (res) {
          if (res.confirm) {
          } else if (res.cancel) {
          }
        }
      })
    },

2.通过 extraData 来判断

比如从 A 小程序跳到 B 小程序,在 A 中跳转的页面写入一下代码

wx.navigateToMiniProgram({
  appId: 'xxx',
  path: 'pages/index/index',
  extraData: {
    foo: 'bar'
  },
  envVersion: 'develop',
  success(res) {
    // 打开成功
  }
})

在 B 的 app.js 里的 onLaunch 或者 onShow 方法获取参数 referrerInfo 中的 extraData 的值,如果 referrerInfo.referrerInfo.extraData.foo == ‘bar’,则可以判断是从 A 跳转过来的,注意这里有两个 referrerInfo。

    onShow: function (referrerInfo) {
        if(referrerInfo.referrerInfo && referrerInfo.referrerInfo.extraData && referrerInfo.referrerInfo.extraData.foo && (referrerInfo.referrerInfo.extraData.foo == 'bar')){
            console.log("from A")
        }
    },

你可能感兴趣的:(小程序)