今天遇见了一个匪夷所思的bug:我有一个tabar,下面有对应的两个页面,我授权进入首页后,切换另一个页面,它就会自动跳转回首页...我又继续点击首页中的某个块,进入其下级页面,它立马又会跳转回首页...演示截图如下:
首先授权:
然后进入首页后的样子及缓存:
然后点击切换个人中心:
然后就高潮了(0.5s~2s内又立马自动跳转回来了):
把我人都整蒙了,没办法我只能一直重现找原因,最后我终于发现出现这个问题的因素了(小程序编辑器上):当我清除缓存后,再次进入授权,确认授权后,进入首页,就会出现该问题,而当我刷新一下(ctrl+s)后,就正常切换了。在手机上,清理过缓存的手机如之前的步骤打开,会出现问题,没有清除缓存的手机,重新打开则正常。
可是问题因素发现了,但是具体是怎样产生的还是蒙的,也就没办法解决了,我的login授权页面代码也是按照手册上的代码敲的,加上了自己的login方法,主要就是请求后台接口,返回用户信息,并设置缓存,并跳转到首页:
var userinfo = res.data.data;
wx.setStorageSync('userinfo', userinfo);
setInterval(function(){
wx.switchTab({
url: '../index/index',
})
},3000);
而且出现上述问题的时候 ,页面也并没有报错...这可真是,有没有遇到过该类问题的或者知道这类问题的老哥,帮忙指点指点啊
中的setInterval是每3000毫秒就会执行一次,你是不是想用setTimeout啊