成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

解決小程序中webview頁(yè)面多層history返回問(wèn)題

xorpay / 2586人閱讀

摘要:聽(tīng)起來(lái)似乎也可行,但小程序的緩存和微信的緩存是同步的,如果在微信環(huán)境中直接訪問(wèn)頁(yè)面,重定向到會(huì)存值,如果直接關(guān)閉頁(yè)面,不會(huì)被清除,那么在小程序中訪問(wèn)時(shí)就直接回退了。

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

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

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

window.addEventListener("popstate", (event) => {
    wx.miniProgram.navigateBack();
});
const code = getSearch("code"); // 偽代碼,獲取查詢參數(shù)
if (!code) { // 頁(yè)面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 { // 頁(yè)面A2
    history.pushState({page: 1}, null, window.location.href);
}

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

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/109989.html

相關(guān)文章

  • 程序程序刷新webview結(jié)

    摘要:場(chǎng)景在小程序其它頁(yè)面做了操作,數(shù)據(jù)發(fā)生改變,回到頁(yè)面時(shí)需要更新里面的數(shù)據(jù)。由于小程序沒(méi)有提供與的實(shí)時(shí)通信能力,因此刷新頁(yè)面是個(gè)可考慮的做法。小結(jié)目前我了解到的情況來(lái)看,確實(shí)沒(méi)有一個(gè)簡(jiǎn)單的可以直接無(wú)副作用地刷新小程序。 場(chǎng)景 在小程序其它頁(yè)面做了操作,數(shù)據(jù)發(fā)生改變,回到webview頁(yè)面時(shí)需要更新webview里面的數(shù)據(jù)。由于小程序沒(méi)有提供與webview的實(shí)時(shí)通信能力,因此刷新頁(yè)面是個(gè)...

    娣辯孩 評(píng)論0 收藏0
  • 理解程序

    摘要:小程序的布局信息微信小程序中使用作為長(zhǎng)度單位,可以根據(jù)屏幕寬度進(jìn)行自適應(yīng)。運(yùn)行環(huán)境普通都是執(zhí)行在瀏覽器的宿主環(huán)境,瀏覽器提供等對(duì)象但是小程序是運(yùn)行在微信上下文中的,沒(méi)有和。 小程序堅(jiān)持著 無(wú)需下載、觸手可及、用完即走的設(shè)計(jì)理念和價(jià)值觀,幫助用戶縮短完成任務(wù)的時(shí)間。下面從以下幾點(diǎn)進(jìn)行總結(jié)??偨Y(jié)是參考三清水老師的小冊(cè)子,推薦大家去購(gòu)買。寫的很棒。 1. 小程序能做什么,不能做什么? sho...

    dmlllll 評(píng)論0 收藏0
  • JS最容易被輕視的對(duì)象----location和history

    摘要:最近開(kāi)始移動(dòng)端頁(yè)面的時(shí)候,被和坑了一把,于是決定對(duì)這兩個(gè)對(duì)象進(jìn)行一個(gè)全面的剖析。但出于隱私方面的原因,對(duì)象不再允許腳本訪問(wèn)已經(jīng)訪問(wèn)過(guò)的實(shí)際。唯一保持使用的功能只有和方法。華為執(zhí)行完之后,我們發(fā)現(xiàn)不能回退了,是不是就跟實(shí)現(xiàn)同樣的效果了。 最近開(kāi)始移動(dòng)端頁(yè)面的時(shí)候,被window.location和window.history坑了一把,于是決定對(duì)這兩個(gè)對(duì)象進(jìn)行一個(gè)全面的剖析。下面進(jìn)行我們的...

    xumenger 評(píng)論0 收藏0
  • 跨平臺(tái)技術(shù)演進(jìn)

    摘要:接下來(lái),我將從原理優(yōu)缺點(diǎn)等方面為大家分享跨平臺(tái)技術(shù)演進(jìn)。小程序年是微信小程序飛速發(fā)展的一年,年,各大廠商快速跟進(jìn),已經(jīng)有了很大的影響力。下面,我們以微信小程序?yàn)槔治鲂〕绦虻募夹g(shù)架構(gòu)。 前言 大家好,我是simbawu ,@BooheeFE Team Leader,關(guān)于這篇文章,有問(wèn)題歡迎來(lái)這里討論。 隨著移動(dòng)互聯(lián)網(wǎng)的普及和快速發(fā)展,手機(jī)成了互聯(lián)網(wǎng)行業(yè)最大的流量分發(fā)入口。以及隨著5G...

    魏憲會(huì) 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<