//app.js import { default as commonApi } from "./api/commonApi" import { default as requestApi } from "./utils/request" import { default as userApi } from "./api/user" import { promisifyAll, promisify } from 'miniprogram-api-promise'; const wxp = {} // promisify all wx's api promisifyAll(wx, wxp) App({ onLaunch: async function () { // 展示本地存储能力 // if(!wx.getStorageSync('token')){ // const tokenData = await commonApi.getToken(); // if(tokenData.token){ // wx.setStorageSync('token', tokenData.token) // requestApi.HEAD.token = tokenData.token // } // } const self = this // 登录 this.isAuth(); // const auth = await wxp.getSetting() // if (!auth.authSetting['scope.userInfo']){ // console.log('您还没有授权'); // requestApi.HEAD.token = '' // wx.setStorageSync('token', '') // return // } // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框 // const info = await wxp.getUserInfo() // console.log(info) // this.globalData.userInfo = info.userInfo // if (this.userInfoReadyCallback) { // this.userInfoReadyCallback(res) // } if(this.globalData.userInfo){ await self.wxLogin(this.globalData.userInfo); } }, globalData: { userInfo: null, }, wxLogin:async function(data){ console.log(data) if (!data){ console.log('你还没有授权') requestApi.HEAD.token = '' wx.setStorageSync('token', '') return } let _self = this; let res = await wxp.login() if (!res.code){ return } data['code'] = res.code let info = await userApi.userLogin(data) console.log(info) wx.setStorageSync('token', info.userInfo.token) requestApi.HEAD.token = info.userInfo.token this.setUserInfo(info.userInfo) return info.userInfo }, getPhoneNumber: async function(data){ let _self = this; let res = await wxp.login() console.log(res) if (!res.code){ return } data['code'] = res.code let info = await userApi.getMobile(data) console.log(info) _self.setUserInfo(info.userInfo) return info.userInfo; }, setUserInfo: function(userInfo){ wx.setStorage({ data: userInfo, key: 'userInfo', }); this.globalData.userInfo = userInfo }, getWxUserInfo: async function(){ if (!this.globalData.userInfo){ try { let userInfo = wx.getStorageSync({key: 'userInfo'}) return userInfo.data } catch (error) { console.log('缓存中没有用户信息') return null } }else { return this.globalData.userInfo } }, isAuth: async function(){ console.log(this.globalData.userInfo); if (!this.globalData.userInfo){ console.log('您还没有授权'); return false; } return true; // const auth = await wxp.getSetting() // console.log(auth); // if (!auth.authSetting['scope.userInfo']){ // console.log('您还没有授权'); // return false // } // return true } })