知識(shí)
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價(jià)值,我們?cè)谧非笃湟曈X(jué)表現(xiàn)的同時(shí),更側(cè)重于功能的便捷,營(yíng)銷的便利,運(yùn)營(yíng)的高效,讓網(wǎng)站成為營(yíng)銷工具,讓軟件能切實(shí)提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序?yàn)楹笃谏?jí)提供便捷的支持!
您當(dāng)前位置>首頁(yè) » 新聞資訊 » 公眾號(hào)相關(guān) >
微信公眾號(hào)通過(guò)會(huì)話框進(jìn)入頁(yè)面獲取localStorage為空的bug
發(fā)表時(shí)間:2020-9-24
發(fā)布人:葵宇科技
瀏覽次數(shù):187
問(wèn)題:
如果點(diǎn)擊公眾號(hào)的菜單進(jìn)入詳情是能獲取到 localStorage的,但是通過(guò)公眾號(hào)返回的鏈接進(jìn)入詳情,拿到的localStorage為{}
分析:
【可能原因1】-存儲(chǔ)時(shí)間短:看網(wǎng)上有說(shuō),localStorage在微信上存儲(chǔ)時(shí)間只有6 7分鐘,但是我第一次點(diǎn)擊進(jìn)去,存儲(chǔ)了本地?cái)?shù)據(jù)后,馬上重新進(jìn)去,還是獲取為空。
【可能原因2】-取出的是json格式,不是對(duì)象:如果你是用對(duì)象格式存進(jìn)本地?cái)?shù)據(jù)的,那么取出來(lái)的確實(shí)是json字符串,需要用JSON.parse(localStorage.getItem('user')).userId 這樣轉(zhuǎn)換一下。這里我轉(zhuǎn)換了,拿到的依然是空。
【可能原因3】-會(huì)話框跟H5不共用:雖然我兩次從公眾號(hào)會(huì)話框進(jìn)入詳情沒(méi)有獲取到localStorage,但是我兩次通過(guò)菜單進(jìn)入能正常獲取到localStorage。
但其實(shí)有個(gè)詭異的情況,不管通過(guò)哪種方式進(jìn)入,控制臺(tái)查看的本地存儲(chǔ)都是有數(shù)據(jù),且數(shù)據(jù)正常。
那么問(wèn)題就來(lái)了,會(huì)話框到底是什么機(jī)制,為什么從它返回的鏈接進(jìn)入就獲取不到本地存儲(chǔ)數(shù)據(jù)呢?
原因大概是:每次從對(duì)話框進(jìn)入頁(yè)面都會(huì)打開(kāi)一個(gè)新的webView容器,而這個(gè)容器和點(diǎn)擊菜單進(jìn)入的容器不是同一個(gè),所以它獲取不了原來(lái)存儲(chǔ)的本地?cái)?shù)據(jù)。并且,由于它每次打開(kāi)一個(gè)新的容器,即時(shí)你打開(kāi)存儲(chǔ)了數(shù)據(jù)后,關(guān)閉后重新打開(kāi),在新的容器上也拿不到上個(gè)容器的數(shù)據(jù),所以localStorage還是空的。
解決:
使用cookie存儲(chǔ)和讀取相應(yīng)的數(shù)據(jù)
相關(guān)案例查看更多
相關(guān)閱讀
- 人口普查小程序
- 網(wǎng)絡(luò)公司聯(lián)系方式
- 云南建設(shè)廳網(wǎng)站
- 網(wǎng)絡(luò)公司電話
- 退款
- 網(wǎng)站建設(shè)報(bào)價(jià)
- 出入小程序
- 跳轉(zhuǎn)小程序
- 網(wǎng)站建設(shè)選
- 云南網(wǎng)站建設(shè)公司地址
- 網(wǎng)站建設(shè)方案 doc
- 網(wǎng)站建設(shè)服務(wù)公司
- 大理網(wǎng)站建設(shè)公司
- 昆明做網(wǎng)站
- 云南網(wǎng)站建設(shè)哪家公司好
- 網(wǎng)站開(kāi)發(fā)公司哪家好
- 支付寶小程序被騙
- 企業(yè)網(wǎng)站
- 云南小程序開(kāi)發(fā)公司哪家好
- 貴州小程序開(kāi)發(fā)
- 報(bào)廢車拆解回收管理系統(tǒng)
- 網(wǎng)站建設(shè)高手
- 云南網(wǎng)站開(kāi)發(fā)
- 云南軟件定制
- 云南省住房建設(shè)廳網(wǎng)站
- 云南網(wǎng)站優(yōu)化公司
- 搜索引擎排名
- 云南網(wǎng)站建設(shè)報(bào)價(jià)
- 云南網(wǎng)站建設(shè)公司
- 汽車回收管理系統(tǒng)