vue企业微信代开发授权后ios返回多次才能退出问题(ios手势返回问题)

因为企业微信授权会通过企业微信授权页,导致返回时会进入授权页出现一些问题,可以使用pageshow监听配合企业微信jssdk完成退出

具体操作:

1、把授权页放在一个单独的页面中,我的是放在了LoginCodes.vue中,进入LoginCodes页面判断是否有缓存num == 1,如果没有给将1存进num缓存,如果有将2存进num缓存,实际上是判断正常情况下最后一次进入LoginCodes页面,可以自行修改。写在created中即可:

      if(JSON.parse(sessionStorage.getItem("num"))){
        sessionStorage.setItem("num", JSON.stringify(2))
      }else{
        sessionStorage.setItem("num", JSON.stringify(1))
      }

2、在App.vue中增加pageshow事件监听,在缓存中的num == 2,(即最后一次进入授权页时的状态),并且判断路由是否为登录页路由,如果是就通过jssdk的wx.closeWindow()方法关闭,具体接入jssdk还没有记录,后续记录。我用的history模式,代码如下:

    window.addEventListener('pageshow', function(event) {
      if(JSON.parse(sessionStorage.getItem("num")) == 2 && window.location.pathname == "/LoginCodes"){
        // alert(JSON.parse(sessionStorage.getItem("num")))
        wx.closeWindow()
      }
    });

 

posted @ 2022-03-17 11:57  从入门到入土  阅读(549)  评论(0编辑  收藏  举报