vue企業微信代開發授權後ios返回多次才能退出問題(ios手勢返回問題)
阿新 • • 發佈:2022-03-17
因為企業微信授權會通過企業微信授權頁,導致返回時會進入授權頁出現一些問題,可以使用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() } });