fix(favorites): 处理收藏项 name 为 null 的情况
- 添加默认标题"未命名文件" - 数据获取后立即处理,保持模板简洁 Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Showing
2 changed files
with
24 additions
and
2 deletions
| 1 | +## [2026-02-13] - 收藏页空名称处理 | ||
| 2 | + | ||
| 3 | +### 修复 | ||
| 4 | +- 修复收藏页数据 `name` 字段为 `null` 时显示空白的问题 | ||
| 5 | +- 添加默认标题"未命名文件"兜底处理 | ||
| 6 | + | ||
| 7 | +--- | ||
| 8 | + | ||
| 9 | +**详细信息**: | ||
| 10 | +- **影响文件**: src/pages/favorites/index.vue | ||
| 11 | +- **技术栈**: Vue 3, Taro 4 | ||
| 12 | +- **测试状态**: 已通过 | ||
| 13 | +- **备注**: 使用 `map` 方法在数据获取后立即处理,保持模板简洁 | ||
| 14 | + | ||
| 15 | +--- | ||
| 16 | + | ||
| 1 | ## [2026-02-13] - 登录权限检查与提示文案优化 | 17 | ## [2026-02-13] - 登录权限检查与提示文案优化 |
| 2 | 18 | ||
| 3 | ### 新增 | 19 | ### 新增 | ... | ... |
| ... | @@ -146,12 +146,18 @@ const fetchFavoritesList = async (params = {}, isLoadMore = false) => { | ... | @@ -146,12 +146,18 @@ const fetchFavoritesList = async (params = {}, isLoadMore = false) => { |
| 146 | if (res.code === 1 && res.data && res.data.list) { | 146 | if (res.code === 1 && res.data && res.data.list) { |
| 147 | console.log('[Favorites] 数据:', res.data.list) | 147 | console.log('[Favorites] 数据:', res.data.list) |
| 148 | 148 | ||
| 149 | + // 处理 name 为 null 的情况,给默认标题"未命名文件" | ||
| 150 | + const processedList = res.data.list.map(item => ({ | ||
| 151 | + ...item, | ||
| 152 | + name: item.name || '未命名文件' | ||
| 153 | + })) | ||
| 154 | + | ||
| 149 | if (isLoadMore) { | 155 | if (isLoadMore) { |
| 150 | // 加载更多:追加数据 | 156 | // 加载更多:追加数据 |
| 151 | - currentList.value = [...currentList.value, ...res.data.list] | 157 | + currentList.value = [...currentList.value, ...processedList] |
| 152 | } else { | 158 | } else { |
| 153 | // 首次加载或刷新:替换数据 | 159 | // 首次加载或刷新:替换数据 |
| 154 | - currentList.value = res.data.list | 160 | + currentList.value = processedList |
| 155 | } | 161 | } |
| 156 | 162 | ||
| 157 | // 判断是否还有更多数据 | 163 | // 判断是否还有更多数据 | ... | ... |
-
Please register or login to post a comment