index.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. //index.js
  2. //获取应用实例
  3. const app = getApp()
  4. Page({
  5. data: {
  6. StatusBar: app.globalData.StatusBar,
  7. CustomBar: app.globalData.CustomBar,
  8. motto: 'Hi 开发者!',
  9. userInfo: {},
  10. hasUserInfo: false,
  11. canIUse: wx.canIUse('button.open-type.getUserInfo')
  12. },
  13. //事件处理函数
  14. bindViewTap: function() {
  15. wx.navigateTo({
  16. url: '../logs/logs'
  17. })
  18. },
  19. onLoad: function () {
  20. if (app.globalData.userInfo) {
  21. this.setData({
  22. userInfo: app.globalData.userInfo,
  23. hasUserInfo: true
  24. })
  25. } else if (this.data.canIUse){
  26. // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回
  27. // 所以此处加入 callback 以防止这种情况
  28. app.userInfoReadyCallback = res => {
  29. this.setData({
  30. userInfo: res.userInfo,
  31. hasUserInfo: true
  32. })
  33. }
  34. } else {
  35. // 在没有 open-type=getUserInfo 版本的兼容处理
  36. wx.getUserInfo({
  37. success: res => {
  38. app.globalData.userInfo = res.userInfo
  39. this.setData({
  40. userInfo: res.userInfo,
  41. hasUserInfo: true
  42. })
  43. }
  44. })
  45. }
  46. },
  47. getUserInfo: function(e) {
  48. console.log(e)
  49. app.globalData.userInfo = e.detail.userInfo
  50. this.setData({
  51. userInfo: e.detail.userInfo,
  52. hasUserInfo: true
  53. })
  54. }
  55. })