从小程序profile页进入小程序,会导致globalData的丢失吗?
当小程序没删除或者没从后台退出时,再从小程序profile页进入小程序,会导致所有的请求失效,推测原因是存放在globalData中的用户token数据丢失导致的。而点击右上 。。。 (三点图标),重新进入小程序,就并不会有这个问题。 请问从小程序profile页进入,和重新进入小程序并不是完全相等吗?? 以下是详细的介绍,及个人推测: 在小程序首页调用用户登录接口,并将返回的token作为全局变量保存起来。 以下是首页: request({
data:{
"code" : res.code
},
url: '/user/login',
method:'POST',
header:{
'content-type':'application/json'
},
})
.then(res => {
let {
openId,
registered
} = res.data.data;
app.globalData.token = res.cookies[0];
app.globalData.openId = openId;
app.globalData.registered = registered;
以下是app.js globalData: {
userInfo: null,
personalManagementOrCollection : 1,
token : ''
}
推测 :从profile 页进入时,globalData的加载,晚于首页的onLoad() ,所以 token 被空字符串覆盖掉了