var that = this; new Promise((resolve, reject) => { // 檢查wx.login有沒有失效,失效的話重新wx.login wx.checkSession({ success() { console.log('code', wx.getStorageS ...
var that = this; new Promise((resolve, reject) => { // 檢查wx.login有沒有失效,失效的話重新wx.login wx.checkSession({ success() { console.log('code', wx.getStorageSync('code')); console.log('globalData', wx.getStorageSync('globalData'));
//如果小程式再次從後臺進入前臺的話,用storage保存的話是有值的
//如果用this.globalData的話來保存數據,下次從後臺進入前臺的話是值還是空的 }, fail() { wx.login({ success(res) { wx.getUserInfo({ success(re) { wx.setStorageSync('code', res.code) that.globalData.code = res.code; that.globalData.userInfo = re.userInfo; wx.setStorageSync('globalData', that.globalData); } }) }, fail: function(err) { } }) } }) resolve(); }).then((res) => { var code=wx.getStorageSync('code'); var globalData=wx.getStorageSync('globalData') })
第一首先wx.checkSession是判斷wx.login方法登錄態有沒有失效的
思路
wx.checkSession({
success(){
//這時候的登陸態是沒有失效的,可以不用再去wx.login
//但是照我的需求,我接下來要去連介面,需要登陸的數據,但是這時候數據怎麼拿
1.如果小程式再次從後臺進入前臺的話,用storage保存的話是有值的
2.如果用this.globalData的話來保存數據,下次從後臺進入前臺的話是值還是空的
},
fail(){
wx.login()
}
})
這就是我的實現思路
代碼在上面