app.ts 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import VersionCheck from './utils/version'
  2. import _buses from './utils/buses'
  3. // import _socket from './utils/socket'
  4. // app.ts
  5. App<IAppOption>({
  6. globalData: {
  7. token: '',
  8. lastLoginTime: 0,
  9. },
  10. onLaunch() {
  11. // 展示本地存储能力
  12. const logs = wx.getStorageSync('logs') || []
  13. logs.unshift(Date.now())
  14. wx.setStorageSync('logs', logs)
  15. // 登录
  16. wx.login({
  17. success: (res) => {
  18. console.log(res.code)
  19. // 发送 res.code 到后台换取 openId, sessionKey, unionId
  20. },
  21. })
  22. // 获取用户信息
  23. wx.getSetting({
  24. success: (res) => {
  25. if (res.authSetting['scope.userInfo']) {
  26. // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
  27. wx.getUserInfo({
  28. success: (res) => {
  29. // 可以将 res 发送给后台解码出 unionId
  30. this.globalData.userInfo = res.userInfo
  31. // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
  32. // 所以此处加入 callback 以防止这种情况
  33. if (this.userInfoReadyCallback) {
  34. this.userInfoReadyCallback(res)
  35. }
  36. },
  37. })
  38. }
  39. },
  40. })
  41. },
  42. onShow() {
  43. VersionCheck()
  44. },
  45. })