123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- Page({
- data: {
- isLogin: false, // 登录状态
- userInfo: {}, // 存储用户信息(头像、昵称、用户名、密码)
- selected: 3, // 底部导航栏选中的 tab
- isHidden: true, // 登录弹窗状态
- },
- // 页面加载时获取缓存的昵称、头像、用户名、密码
- onLoad() {
- this.loadUserInfo(); // 调用加载用户信息的方法
- },
- // 页面显示时确保用户信息刷新
- onShow() {
- this.loadUserInfo(); // 每次进入页面时刷新用户信息
- if (typeof this.getTabBar === 'function' && this.getTabBar()) {
- this.getTabBar().setData({
- selected: 3 // 设置当前tab为选中状态
- });
- }
- // 隐藏返回首页按钮
- if (wx.canIUse('hideHomeButton')) {
- wx.hideHomeButton();
- }
- },
- // 加载用户信息并更新页面
- loadUserInfo() {
- const storedUserInfo = wx.getStorageSync('userInfo'); // 获取缓存中的用户信息
- if (storedUserInfo) {
- // 如果缓存中有用户信息,更新页面上的数据
- this.setData({
- userInfo: storedUserInfo, // 更新用户信息
- isLogin: true, // 设置登录状态为 true
- });
- }
- },
- // 获取用户头像
- getAvatar(e) {
- const avatarUrl = e.detail.avatarUrl;
- this.setData({
- 'userInfo.avatarUrl': avatarUrl
- });
- // 保存头像到缓存
- let userInfo = wx.getStorageSync('userInfo') || {};
- userInfo.avatarUrl = avatarUrl;
- wx.setStorageSync('userInfo', userInfo);
- },
- // 获取用户昵称
- getName(e) {
- const nickName = e.detail.value;
- this.setData({
- 'userInfo.nickName': nickName
- });
- // 保存昵称到缓存
- let userInfo = wx.getStorageSync('userInfo') || {};
- userInfo.nickName = nickName;
- wx.setStorageSync('userInfo', userInfo);
- },
- // 显示登录弹窗
- goLogin() {
- this.setData({
- isHidden: false
- });
- },
- // 编辑个人资料
- EditProfile() {
- wx.navigateTo({
- url: '/shoping/EditProfile/EditProfile'
- });
- },
- // 取消登录弹窗
- potNo() {
- this.setData({
- isHidden: true
- });
- },
- // 确认登录弹窗
- popYes() {
- const { avatarUrl, nickName, username, password } = this.data.userInfo;
- if (!avatarUrl || !nickName || !username || !password) {
- wx.showToast({
- icon: 'error',
- title: '请填写头像、昵称、用户名和密码',
- });
- return;
- }
- // 保存头像、昵称、用户名和密码到缓存
- wx.setStorageSync('userInfo', this.data.userInfo);
- this.setData({
- isLogin: true, // 设置登录状态为 true
- isHidden: true, // 隐藏弹窗
- });
- },
- // 跳转到阈值页面
- goToThreshold() {
- wx.navigateTo({
- url: '/pages/threshold/threshold'
- });
- },
- // 点击退出登录
- tuichu() {
- // 清除缓存
- wx.clearStorageSync();
- // 重置登录状态
- this.setData({
- isLogin: false,
- userInfo: {}
- });
- // 跳转到登录页面
- wx.reLaunch({
- url: '/pages/RoleSelectionPage/RoleSelectionPage' // 登录页面的路径
- });
- }
- });
|