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() } });