最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2019年08月20日 09:58:16   作者:sunny  
這篇文章主要介紹了詳解解決小程序中webview頁面多層history返回問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

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

預(yù)期表現(xiàn):點小程序原生的返回按鈕后返回到小程序上個頁面

解決方案:通過history.pushState添加歷史記錄名目,history.onpopstate監(jiān)聽歷史記錄條目發(fā)生變化時,調(diào)用小程序APIwx.navigateBack

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

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

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 使用JS實現(xiàn)任意位置縮放圖片功能

    使用JS實現(xiàn)任意位置縮放圖片功能

    本文將用一個簡單的例子詳細(xì)講解如何用原生JS一步步實現(xiàn)完整的任意位置縮放圖片功能,無任何第三方依賴,指針事件 進(jìn)行多端統(tǒng)一的事件監(jiān)聽,干貨滿滿,需要的朋友可以參考下
    2024-04-04
  • mpvue 頁面預(yù)加載新增preLoad生命周期的兩種方式

    mpvue 頁面預(yù)加載新增preLoad生命周期的兩種方式

    這篇文章主要介紹了mpvue 頁面預(yù)加載新增preLoad生命周期的兩種方式,本文重點給大家講解了第一種方式,需要的朋友可以參考下
    2019-10-10
  • 一個可拖拽列寬表格實例演示

    一個可拖拽列寬表格實例演示

    本文將詳細(xì)介紹一個可拖拽列寬表格實例,需要了解更多的朋友可以參考下
    2012-11-11
  • 全面解析Bootstrap表單使用方法(表單控件)

    全面解析Bootstrap表單使用方法(表單控件)

    這篇文章全面解析了Bootstrap表單的使用方法,本文重點介紹Bootstrap表單控件,感興趣的小伙伴們可以參考一下
    2015-11-11
  • Javascript下的keyCode鍵碼值表

    Javascript下的keyCode鍵碼值表

    Javascript下的keyCode鍵碼值表...
    2007-04-04
  • 移動端js圖片查看器

    移動端js圖片查看器

    這篇文章主要為大家詳細(xì)介紹了js圖片查看器的制作方法,可以實現(xiàn)圖片的滑動等效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • 如何編寫一個d.ts文件的步驟詳解

    如何編寫一個d.ts文件的步驟詳解

    這篇文章主要給大家介紹了關(guān)于如何編寫一個d.ts文件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用d.ts具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-04-04
  • 簡單實現(xiàn)bootstrap導(dǎo)航效果

    簡單實現(xiàn)bootstrap導(dǎo)航效果

    這篇文章主要為大家詳細(xì)介紹了如何簡單實現(xiàn)bootstrap導(dǎo)航效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • JavaScript實現(xiàn)可終止輪詢請求的方法

    JavaScript實現(xiàn)可終止輪詢請求的方法

    輪詢請求就是間隔相同的時間(如5s)后不斷地向服務(wù)端發(fā)起同一個接口的請求,當(dāng)然不能無限次去請求,所以輪詢必須要有個停止輪詢的機制,今天通過本文給大家介紹JavaScript實現(xiàn)可終止的輪詢請求,感興趣的朋友一起看看吧
    2022-06-06
  • 刪除javascript中注釋語句的正則表達(dá)式

    刪除javascript中注釋語句的正則表達(dá)式

    這篇文章主要介紹了刪除javascript中注釋語句的正則表達(dá)式,需要的朋友可以參考下
    2014-06-06

最新評論

财经| 海南省| 二手房| 汤阴县| 斗六市| 奉节县| 库尔勒市| 卢湾区| 滨州市| 田林县| 大港区| 鄂托克前旗| 平潭县| 文成县| 万载县| 宜丰县| 开化县| 日照市| 友谊县| 南皮县| 格尔木市| 郯城县| 宿迁市| 罗江县| 武定县| 玛纳斯县| 贡觉县| 旬阳县| 永兴县| 二连浩特市| 扬州市| 两当县| 万源市| 肇州县| 蓬溪县| 巴彦县| 工布江达县| 威信县| 即墨市| 静海县| 青州市|