|
|
@@ -29,57 +29,83 @@ function loginNow(authPage = 'plugin://fm-plugin/fm-auth') {
|
|
|
}
|
|
|
|
|
|
// 跳转到授权页面
|
|
|
- console.log('🔄 跳转到授权页面');
|
|
|
+ console.log('🔄 准备跳转到授权页面:', authPage);
|
|
|
|
|
|
// 检查页面栈
|
|
|
const pages = getCurrentPages();
|
|
|
console.log('当前页面栈层数:', pages.length);
|
|
|
+ console.log('当前页面路径:', pages[pages.length - 1]?.route);
|
|
|
|
|
|
- if (pages.length >= 10) {
|
|
|
- // 页面栈已满,使用 redirectTo
|
|
|
- console.log('⚠️ 页面栈已满,使用 redirectTo');
|
|
|
- wx.redirectTo({
|
|
|
- url: authPage,
|
|
|
- success: () => {
|
|
|
- console.log('✅ redirectTo 跳转成功');
|
|
|
- },
|
|
|
- fail: (err) => {
|
|
|
- console.error('❌ redirectTo 失败:', err);
|
|
|
- wx.showToast({
|
|
|
- title: '跳转失败,请重试',
|
|
|
- icon: 'none'
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- } else {
|
|
|
- // 使用 navigateTo
|
|
|
- console.log('📱 使用 navigateTo 跳转');
|
|
|
- wx.navigateTo({
|
|
|
- url: authPage,
|
|
|
- success: () => {
|
|
|
- console.log('✅ navigateTo 跳转成功');
|
|
|
- },
|
|
|
- fail: (err) => {
|
|
|
- console.error('❌ navigateTo 失败:', err);
|
|
|
- console.log('⚠️ 尝试使用 redirectTo');
|
|
|
-
|
|
|
- // 降级使用 redirectTo
|
|
|
- wx.redirectTo({
|
|
|
- url: authPage,
|
|
|
- success: () => {
|
|
|
- console.log('✅ redirectTo 跳转成功');
|
|
|
- },
|
|
|
- fail: (err2) => {
|
|
|
- console.error('❌ redirectTo 也失败:', err2);
|
|
|
- wx.showToast({
|
|
|
- title: '跳转失败,请重试',
|
|
|
- icon: 'none'
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- }
|
|
|
+ // 添加短暂延迟,确保 UI 渲染完成
|
|
|
+ setTimeout(() => {
|
|
|
+ if (pages.length >= 9) {
|
|
|
+ // 页面栈接近满,使用 redirectTo
|
|
|
+ console.log('⚠️ 页面栈接近满,使用 redirectTo');
|
|
|
+ wx.redirectTo({
|
|
|
+ url: authPage,
|
|
|
+ success: () => {
|
|
|
+ console.log('✅ redirectTo 跳转成功');
|
|
|
+ },
|
|
|
+ fail: (err) => {
|
|
|
+ console.error('❌ redirectTo 失败:', err);
|
|
|
+ console.error('错误详情:', JSON.stringify(err));
|
|
|
+ wx.showToast({
|
|
|
+ title: '跳转失败,请重试',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 2000
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ // 使用 navigateTo
|
|
|
+ console.log('📱 使用 navigateTo 跳转');
|
|
|
+ wx.navigateTo({
|
|
|
+ url: authPage,
|
|
|
+ success: () => {
|
|
|
+ console.log('✅ navigateTo 跳转成功');
|
|
|
+ },
|
|
|
+ fail: (err) => {
|
|
|
+ console.error('❌ navigateTo 失败:', err);
|
|
|
+ console.error('错误详情:', JSON.stringify(err));
|
|
|
+ console.log('⚠️ 尝试使用 redirectTo');
|
|
|
+
|
|
|
+ // 降级使用 redirectTo
|
|
|
+ wx.redirectTo({
|
|
|
+ url: authPage,
|
|
|
+ success: () => {
|
|
|
+ console.log('✅ redirectTo 跳转成功');
|
|
|
+ },
|
|
|
+ fail: (err2) => {
|
|
|
+ console.error('❌ redirectTo 也失败:', err2);
|
|
|
+ console.error('错误详情:', JSON.stringify(err2));
|
|
|
+
|
|
|
+ // 最后尝试使用 reLaunch
|
|
|
+ console.log('⚠️ 尝试使用 reLaunch');
|
|
|
+ wx.reLaunch({
|
|
|
+ url: '/index',
|
|
|
+ success: () => {
|
|
|
+ console.log('✅ reLaunch 到首页成功,请重新点击登录');
|
|
|
+ wx.showToast({
|
|
|
+ title: '请重新点击登录',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 2000
|
|
|
+ });
|
|
|
+ },
|
|
|
+ fail: (err3) => {
|
|
|
+ console.error('❌ reLaunch 也失败:', err3);
|
|
|
+ wx.showToast({
|
|
|
+ title: '跳转失败,请重启小程序',
|
|
|
+ icon: 'none',
|
|
|
+ duration: 3000
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }, 100);
|
|
|
|
|
|
console.log('===========================================');
|
|
|
return false;
|