91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

詳解解決小程序中webview頁面多層history返回問題

發布時間:2020-09-15 11:17:43 來源:腳本之家 閱讀:344 作者:sunny 欄目:web開發

小程序開發中遇到的問題:小程序中嵌套了一個webview頁面,webview頁面中有靜默授權(A1頁面靜默授權后重定向到A2頁面),點小程序原生的返回按鈕會返回到A1頁面,然后頁面就會反復靜默授權

預期表現:點小程序原生的返回按鈕后返回到小程序上個頁面

解決方案:通過history.pushState添加歷史記錄名目,history.onpopstate監聽歷史記錄條目發生變化時,調用小程序APIwx.navigateBack

window.addEventListener('popstate', (event) => {
  wx.miniProgram.navigateBack();
});
const code = getSearch('code'); // 偽代碼,獲取查詢參數
if (!code) { // 頁面A1
  if (isWeixin()) {
    // 微信環境
    const redirectUrl = window.location.href + '&code=1';
    window.location. + '?appid=' + appId +
    '&redirect_uri=' + encodeURIComponent(redirectUrl) +
    '&response_type=code&scope=snsapi_userinfo' +
    '#wechat_redirect'; // 靜默授權偽代碼
  } else {
    alert('當前不是微信環境');
  }
} else { // 頁面A2
  history.pushState({page: 1}, null, window.location.href);
}

剛開始想的解決辦法是用localStorage,跳轉到A2時存儲一個值,返回到A1時獲取這個值,如果有值就清除這個值并且回退到小程序頁面。聽起來似乎也可行,但小程序的緩存和微信的緩存是同步的,如果在微信環境中直接訪問A1頁面,重定向到A2會存值,如果直接關閉頁面,不會被清除,那么在小程序中訪問時就直接回退了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

黔东| 自治县| 石屏县| 太谷县| 遂平县| 阿拉善右旗| 全椒县| 巴马| 福安市| 乌拉特后旗| 太谷县| 金塔县| 上高县| 景谷| 岢岚县| 汤阴县| 佛教| 平顺县| 正镶白旗| 临桂县| 十堰市| 宜章县| 莒南县| 邹城市| 临沂市| 石家庄市| 奉贤区| 石楼县| 南开区| 玛沁县| 正阳县| 海伦市| 西乡县| 郸城县| 玛纳斯县| 裕民县| 宁德市| 同德县| 遂昌县| 丘北县| 垣曲县|