fix(wxapp): 修复首页分享链接白屏问题

- 添加邀请关系处理的超时保护,避免长时间等待
- 优化 API调用流程,增加错误处理机制
- 改进页面加载逻辑,确保主要内容优先显示
- 新增失败重试计数,防止无限重试
- 清理邀请参数缓存,避免重复处理
This commit is contained in:
2025-09-01 20:40:08 +08:00
parent 7a7d8b4605
commit 2c31f2a6d7
6 changed files with 590 additions and 45 deletions

104
快速验证修复.md Normal file
View File

@@ -0,0 +1,104 @@
# 快速验证分享链接白屏问题修复
## 🚀 立即验证步骤
### 1. 重新编译项目
```bash
# 清理并重新编译
npm run build:weapp
```
### 2. 测试首页分享链接
1. **打开微信开发者工具**
2. **在首页点击分享按钮**
3. **复制分享链接**
4. **从分享链接重新进入**
### 3. 观察控制台日志
应该看到以下日志序列:
```
=== 小程序启动参数处理开始 ===
完整启动参数: {...}
检测到待处理的邀请关系
使用用户ID处理邀请关系: [用户ID]
首页邀请关系处理成功 (或失败,但不影响页面)
=== 小程序启动参数处理结束 ===
```
## 🔧 修复内容总结
### 修复的文件:
1. **`src/pages/index/index.tsx`** - 首页邀请处理超时保护
2. **`src/utils/invite.ts`** - 邀请API调用超时和错误处理
3. **`src/shop/goodsDetail/index.tsx`** - 商品详情页加载优化
### 关键改进:
- ✅ 邀请关系处理添加超时保护5-8秒
- ✅ API调用失败不阻塞页面显示
- ✅ 改进错误处理和类型安全
- ✅ 失败重试计数机制
- ✅ 更好的加载UI和错误提示
## 🧪 测试场景
### 场景1正常分享链接
- **操作**:从首页分享链接进入
- **预期**:页面正常加载,不出现白屏
### 场景2带邀请参数的链接
- **操作**:从经销商分享的链接进入
- **预期**:页面正常显示,邀请关系在后台处理
### 场景3网络异常
- **操作**:断网状态下从分享链接进入
- **预期**:页面能显示基本内容,邀请处理超时后不影响页面
## 🔍 问题排查
如果仍有问题,请检查:
### 1. 编译是否成功
```bash
# 查看编译输出
npm run build:weapp
```
### 2. 清理缓存
在微信开发者工具中:
- 点击"清缓存" -> "清除全部缓存"
- 重新编译项目
### 3. 查看错误日志
在控制台中查看是否有:
- TypeScript编译错误
- 运行时错误
- API调用错误
### 4. 手动测试邀请功能
在控制台执行:
```javascript
// 查看邀请参数
console.log('邀请参数:', Taro.getStorageSync('invite_params'))
// 清除邀请参数(如果需要重置)
Taro.removeStorageSync('invite_params')
```
## ✅ 成功标准
修复成功的标志:
1. 首页分享链接不再出现长时间白屏
2. 控制台日志显示正常的处理流程
3. 邀请关系处理不影响页面显示
4. 网络异常时页面仍能访问
## 🆘 如果仍有问题
请提供:
1. 控制台的完整错误日志
2. 网络面板的API请求状态
3. 具体的复现步骤
4. 是否有特定的邀请参数
这样我可以进一步诊断和修复问题。