因为我在循环的时候做了获取userInfo的动作, 如果获取不到userInfo就跳转到了登录页面 。
在这个过程中我发现个问题 , 如果在循环的过程中, 执行了wx.switchTab的话, 这个循环在底层还是一直在执行, 所以经inter存储到了 this的data中 。
需要在wx.switchTab跳转之前 , 将循环关闭 。
如果我有理解不到位的地方 ,欢迎大家指出 。
getDataList:function(){
var self = this;
if(!app.globalData.userInfo) {
clearInterval(self.data.inter); // 清除掉此循环
wx.switchTab({
url: '../login/login',
})
return;
}
},
onShow: function () {
var inter = setInterval(this.getDataList, 10000) // 循环时间 这里是10秒
this.setData({
inter : inter
});
}