| | |
| | | if (!this.data.manualNavigate) { |
| | | console.log('页面卸载时未设置manualNavigate,假定是返回按钮操作'); |
| | | |
| | | // 立即写入临时标记,以便首页检测到 |
| | | try { |
| | | // 多种方式确保写入成功 |
| | | wx.setStorageSync('_temp_from_login', 'true'); |
| | | console.log('立即写入_temp_from_login标记为true'); |
| | | |
| | | // 创建一个全局对象,作为备用方案 |
| | | if (!getApp().globalData) { |
| | | getApp().globalData = {}; |
| | | } |
| | | getApp().globalData._tempFromLogin = true; |
| | | console.log('同时设置全局变量_tempFromLogin=true'); |
| | | |
| | | // 检查写入是否成功 |
| | | const check = wx.getStorageSync('_temp_from_login'); |
| | | console.log('检查临时标记是否写入成功:', check); |
| | | } catch (e) { |
| | | console.error('写入标记失败:', e); |
| | | // 备用方式写入 |
| | | wx.setStorage({ |
| | | key: '_temp_from_login', |
| | | data: 'true' |
| | | }); |
| | | } |
| | | |
| | | // 尝试使用wx.navigateBack返回上一页(如果可行) |
| | | const pages = getCurrentPages(); |
| | | if (pages.length > 1) { |
| | |
| | | // 设置全局登录状态 |
| | | getApp().globalData.isLoggedIn = true; |
| | | |
| | | // 确保清除临时标记 |
| | | try { |
| | | wx.removeStorageSync('_temp_from_login'); |
| | | } catch(e) { |
| | | console.warn('清除临时标记失败', e); |
| | | } |
| | | |
| | | wx.showToast({ |
| | | title: '绑定成功', |
| | |
| | | setTimeout(() => { |
| | | console.log('登录成功,准备跳转到首页'); |
| | | // 跳转到首页,使用reLaunch而不是redirectTo |
| | | wx.reLaunch({ |
| | | wx.redirectTo({ |
| | | url: '/pages/home/home' |
| | | }); |
| | | }, 1500); |