mine.js 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. // pages/mine/mine.js
  2. const defaultAvatarUrl = "../../static/images/no-login.png"
  3. Page({
  4. /**
  5. * 页面的初始数据
  6. */
  7. data: {
  8. showAuthorizedDialog: false,
  9. hasAuth: false,
  10. avatarUrl: defaultAvatarUrl,
  11. userName: "用户登录",
  12. phoneNumber: "",
  13. menuList: [{
  14. icon: "../../static/mine/smbg.png",
  15. title: "睡眠报告",
  16. type: "switchTab",
  17. url: "/pages/data/data"
  18. }, {
  19. icon: "../../static/mine/dcwj.png",
  20. title: "调查问卷",
  21. type: "navigate",
  22. url: "/subpages/testSAS/testSAS"
  23. }, {
  24. icon: "../../static/mine/bzzx.png",
  25. title: "帮助中心",
  26. type: "navigate",
  27. url: ""
  28. }, {
  29. icon: "../../static/mine/gywm.png",
  30. title: "关于我们",
  31. type: "navigate",
  32. url: ""
  33. }]
  34. },
  35. onMenuClick(e) {
  36. console.log(e.currentTarget.dataset);
  37. const { index } = e.currentTarget.dataset;
  38. var hasAuth = wx.getStorageSync("hasAuth");
  39. switch (index - 0) {
  40. case 0:
  41. case 1:
  42. // need Login
  43. if (hasAuth) {
  44. this.toPage(index);
  45. } else {
  46. this.showDialog();
  47. }
  48. break;
  49. default:
  50. this.toPage(index);
  51. break;
  52. }
  53. },
  54. toPage(index) {
  55. const type = this.data.menuList[index].type;
  56. const url = this.data.menuList[index].url;
  57. if (!url) {
  58. return
  59. }
  60. if (type == 'switchTab') {
  61. wx.switchTab({
  62. url: url
  63. })
  64. } else if (type == 'navigate') {
  65. wx.navigateTo({
  66. url: url
  67. })
  68. }
  69. },
  70. /**
  71. * 生命周期函数--监听页面加载
  72. */
  73. onLoad(options) {
  74. },
  75. /**
  76. * 生命周期函数--监听页面初次渲染完成
  77. */
  78. onReady() {
  79. },
  80. /**
  81. * 生命周期函数--监听页面显示
  82. */
  83. onShow() {
  84. const app = getApp();
  85. app.globalData.selectedTabIndex = 3;
  86. this.getTabBar().setData({
  87. selected: 3
  88. })
  89. this.checkAuth()
  90. },
  91. showDialog() {
  92. this.setData({
  93. showAuthorizedDialog: true
  94. })
  95. },
  96. checkAuth() {
  97. var hasAuth = wx.getStorageSync("hasAuth");
  98. this.setData({
  99. hasAuth: hasAuth
  100. })
  101. if (hasAuth) {
  102. var userInfo = wx.getStorageSync("userInfo");
  103. this.setData({
  104. nickName: userInfo.nickName || "用户登录",
  105. avatarUrl: userInfo.avatarUrl || defaultAvatarUrl,
  106. phoneNumber: userInfo.phoneNumber || ""
  107. })
  108. }
  109. return hasAuth;
  110. },
  111. authorizationSuccessful() {
  112. console.log("授权成功");
  113. this.setData({ showAuthorizedDialog: false })
  114. this.checkAuth();
  115. },
  116. /**
  117. * 生命周期函数--监听页面隐藏
  118. */
  119. onHide() {
  120. },
  121. /**
  122. * 生命周期函数--监听页面卸载
  123. */
  124. onUnload() {
  125. },
  126. /**
  127. * 页面相关事件处理函数--监听用户下拉动作
  128. */
  129. onPullDownRefresh() {
  130. },
  131. /**
  132. * 页面上拉触底事件的处理函数
  133. */
  134. onReachBottom() {
  135. },
  136. /**
  137. * 用户点击右上角分享
  138. */
  139. onShareAppMessage() {
  140. }
  141. })