73 lines
2.0 KiB
JavaScript
73 lines
2.0 KiB
JavaScript
// app.js
|
|
import request from './utils/request.js'
|
|
|
|
App({
|
|
onLaunch() {
|
|
|
|
// 展示本地存储能力
|
|
const logs = wx.getStorageSync('logs') || []
|
|
logs.unshift(Date.now())
|
|
wx.setStorageSync('logs', logs)
|
|
|
|
|
|
wx.login({
|
|
success: res => {
|
|
// 发送 res.code 到后台换取 openId, sessionKey, unionId
|
|
request({
|
|
url: '/wx/user/' + this.globalData.appID + '/login',
|
|
method: 'get',
|
|
data: {
|
|
code: res.code
|
|
}
|
|
}).then(res => {
|
|
console.log(res)
|
|
|
|
this.globalData.login = true
|
|
// 设置登录时间
|
|
this.globalData.loginTime = Date.now()
|
|
|
|
// 设置登录信息
|
|
const userBaseInfo = {}
|
|
userBaseInfo.openid = res.openid
|
|
userBaseInfo.postmark = res.postmark
|
|
userBaseInfo.token = res.token
|
|
|
|
this.globalData.userBaseInfo = userBaseInfo
|
|
|
|
}).then(res => {
|
|
// 获取用户信息
|
|
wx.getSetting({
|
|
success: res => {
|
|
if (res.authSetting['scope.userInfo']) {
|
|
// 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
|
|
wx.getUserInfo({
|
|
success: res => {
|
|
// 可以将 res 发送给后台解码出 unionId
|
|
this.globalData.userInfo = res.userInfo
|
|
|
|
// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
|
|
// 所以此处加入 callback 以防止这种情况
|
|
if (this.userInfoReadyCallback) {
|
|
this.userInfoReadyCallback(res)
|
|
}
|
|
}
|
|
})
|
|
}
|
|
}
|
|
})
|
|
}).catch(err => {
|
|
console.log(err)
|
|
})
|
|
}
|
|
})
|
|
},
|
|
globalData: {
|
|
userInfo: null,
|
|
userBaseInfo: null,
|
|
loginTime: null,
|
|
login: false,
|
|
appID: 'wxb915ee2a665fcb6c',
|
|
baseURL: 'http://localhost:8088'
|
|
}
|
|
})
|