Staff.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. Page({
  2. data: {
  3. isLogin: false, // 登录状态
  4. validUsers: { // 存储用户名、密码和头像信息
  5. username: '',
  6. password: '',
  7. avatarUrl: ''
  8. },
  9. isHidden: true, // 登录弹窗状态
  10. },
  11. // 页面加载时获取缓存的用户信息
  12. onLoad() {
  13. this.loadUserInfo(); // 调用加载用户信息的方法
  14. },
  15. // 页面显示时确保用户信息刷新
  16. onShow() {
  17. this.loadUserInfo(); // 每次进入页面时刷新用户信息
  18. if (typeof this.getTabBar === 'function' && this.getTabBar()) {
  19. this.getTabBar().setData({});
  20. }
  21. // 隐藏返回首页按钮
  22. if (wx.canIUse('hideHomeButton')) {
  23. wx.hideHomeButton();
  24. }
  25. },
  26. // 加载用户信息并更新页面
  27. loadUserInfo() {
  28. const storedUserInfo = wx.getStorageSync('userInfo'); // 获取缓存中的用户信息
  29. if (storedUserInfo && storedUserInfo.username && storedUserInfo.password) {
  30. // 如果缓存中有用户名和密码,更新页面上的数据
  31. this.setData({
  32. validUsers: storedUserInfo, // 更新用户信息
  33. isLogin: true, // 设置登录状态为 true
  34. });
  35. }
  36. },
  37. // 获取用户的用户名
  38. getUsername(e) {
  39. const username = e.detail.value;
  40. this.setData({
  41. 'validUsers.username': username
  42. });
  43. // 保存用户名到缓存
  44. let userInfo = wx.getStorageSync('userInfo') || {};
  45. userInfo.username = username;
  46. wx.setStorageSync('userInfo', userInfo);
  47. },
  48. // 获取用户的密码
  49. getPassword(e) {
  50. const password = e.detail.value;
  51. this.setData({
  52. 'validUsers.password': password
  53. });
  54. // 保存密码到缓存
  55. let userInfo = wx.getStorageSync('userInfo') || {};
  56. userInfo.password = password;
  57. wx.setStorageSync('userInfo', userInfo);
  58. },
  59. // 显示登录弹窗
  60. goLogin() {
  61. this.setData({
  62. isHidden: false
  63. });
  64. },
  65. // 取消登录弹窗
  66. potNo() {
  67. this.setData({
  68. isHidden: true
  69. });
  70. },
  71. // 编辑个人资料
  72. EditProfile() {
  73. wx.navigateTo({
  74. url: '/shoping/EditProfile/EditProfile'
  75. });
  76. },
  77. // 确认登录弹窗
  78. popYes() {
  79. const { username, password } = this.data.validUsers;
  80. if (!username || !password) {
  81. wx.showToast({
  82. icon: 'error',
  83. title: '请填写用户名和密码',
  84. });
  85. return;
  86. }
  87. // 保存用户名和密码到缓存
  88. wx.setStorageSync('userInfo', this.data.validUsers);
  89. this.setData({
  90. isLogin: true, // 设置登录状态为 true
  91. isHidden: true, // 隐藏弹窗
  92. });
  93. },
  94. // 跳转到阈值页面
  95. goToThreshold() {
  96. wx.navigateTo({
  97. url: '/pages/threshold/threshold'
  98. });
  99. },
  100. // 点击退出登录
  101. tuichu() {
  102. // 清除缓存
  103. wx.clearStorageSync();
  104. // 重置登录状态
  105. this.setData({
  106. isLogin: false,
  107. validUsers: {} // 清空用户信息
  108. });
  109. // 跳转到登录页面
  110. wx.reLaunch({
  111. url: '/shoping/Home/Home' // 登录页面的路径
  112. });
  113. }
  114. });