鍍金池/ 問答/HTML/ 小程序緩存問題

小程序緩存問題

今天遇見了一個匪夷所思的bug:我有一個tabar,下面有對應(yīng)的兩個頁面,我授權(quán)進入首頁后,切換另一個頁面,它就會自動跳轉(zhuǎn)回首頁...我又繼續(xù)點擊首頁中的某個塊,進入其下級頁面,它立馬又會跳轉(zhuǎn)回首頁...演示截圖如下:
首先授權(quán):

clipboard.png

然后進入首頁后的樣子及緩存:

clipboard.png

clipboard.png
然后點擊切換個人中心:

clipboard.png
然后就高潮了(0.5s~2s內(nèi)又立馬自動跳轉(zhuǎn)回來了):

clipboard.png
把我人都整蒙了,沒辦法我只能一直重現(xiàn)找原因,最后我終于發(fā)現(xiàn)出現(xiàn)這個問題的因素了(小程序編輯器上):當我清除緩存后,再次進入授權(quán),確認授權(quán)后,進入首頁,就會出現(xiàn)該問題,而當我刷新一下(ctrl+s)后,就正常切換了。在手機上,清理過緩存的手機如之前的步驟打開,會出現(xiàn)問題,沒有清除緩存的手機,重新打開則正常。
可是問題因素發(fā)現(xiàn)了,但是具體是怎樣產(chǎn)生的還是蒙的,也就沒辦法解決了,我的login授權(quán)頁面代碼也是按照手冊上的代碼敲的,加上了自己的login方法,主要就是請求后臺接口,返回用戶信息,并設(shè)置緩存,并跳轉(zhuǎn)到首頁:

 var userinfo = res.data.data;
 wx.setStorageSync('userinfo', userinfo);
setInterval(function(){
   wx.switchTab({
       url: '../index/index',
   })
},3000);

而且出現(xiàn)上述問題的時候 ,頁面也并沒有報錯...這可真是,有沒有遇到過該類問題的或者知道這類問題的老哥,幫忙指點指點啊

回答
編輯回答
我不懂

同步保存完用戶信息后,為什么還要設(shè)置一個定時器去跳轉(zhuǎn)呢?是不是可以這樣:

var userinfo = res.data.data;
wx.setStorageSync('userinfo', userinfo);
wx.switchTab({
  url: '../index/index',
})
2018年1月23日 16:14
編輯回答
撿肥皂
var userinfo = res.data.data;
 wx.setStorageSync('userinfo', userinfo);
setInterval(function(){
   wx.switchTab({
       url: '../index/index',
   })
},3000);

中的setInterval是每3000毫秒就會執(zhí)行一次,你是不是想用setTimeout啊

2018年9月23日 14:32