app.js 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. //app.js
  2. var server = require('/libs/config.js');
  3. App({
  4. onLaunch: function () {
  5. // 展示本地存储能力
  6. var logs = wx.getStorageSync('logs') || []
  7. logs.unshift(Date.now())
  8. wx.setStorageSync('logs', logs)
  9. // 登录
  10. wx.login({
  11. success: res => {
  12. console.info(server.Server.url)
  13. // 发送 res.code 到后台换取 openId, sessionKey, unionId
  14. this.globalData.code=res.code
  15. wx.request({
  16. url: server.Server.url +'/api/user/checkOpenId',
  17. //url: 'https://www.easy-mock.com/mock/59c0bb01e0dc663341af8b9f/gugnv/userInfo',
  18. data:{
  19. code:res.code
  20. },
  21. success: function (res) {
  22. console.log(res);
  23. if (res.statusCode=='404'){//如果验证已经注册过,免登录进入
  24. wx.showToast({
  25. title: '服务器中断',
  26. icon: 'success',
  27. duration: 2000
  28. })
  29. }else if(res.data.errorCode=='60001'){//进入注册页面
  30. wx.redirectTo({
  31. url: '/pages/index/index',
  32. })
  33. } else if (res.data.errorCode == '0'){//已经注册过
  34. //保存用户id到全局变量
  35. wx.redirectTo({
  36. url: '/pages/txmap/index?userId=' + res.data.data.userId,
  37. })
  38. }else{
  39. wx.showToast({
  40. title: 'Bad:'+res.statusCode,
  41. icon: 'success',
  42. duration: 2000
  43. })
  44. }
  45. }
  46. })
  47. }
  48. })
  49. // 获取用户信息
  50. wx.getSetting({
  51. success: res => {
  52. if (res.authSetting['scope.userInfo']) {
  53. // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框
  54. wx.getUserInfo({
  55. success: res => {
  56. // 可以将 res 发送给后台解码出 unionId
  57. this.globalData.userInfo = res.userInfo
  58. // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
  59. // 所以此处加入 callback 以防止这种情况
  60. if (this.userInfoReadyCallback) {
  61. this.userInfoReadyCallback(res)
  62. }
  63. }
  64. })
  65. }
  66. }
  67. })
  68. },
  69. globalData: {
  70. userInfo: null,
  71. server:server,
  72. userId:'',
  73. deptData:null,
  74. code:'',
  75. nwUserid:''
  76. }
  77. })