Files
chinese-family-tree-2/TEST_API_RESPONSE.md
T
freedakgmail 3d075c6076 0.0.8.5
2025-11-24 14:02:34 +08:00

2.6 KiB
Raw Blame History

API 数据验证指南

问题诊断

王氏家族始祖在数据库中正确设置了 isFounder: true,但前端可能没有显示。

数据库验证

王德厚
  isFounder: true
  generation: 1
  tags: 教书先生

数据库中的数据是正确的。

可能的原因

1. 浏览器缓存

解决方法

  • Cmd + Shift + R (Mac) 或 Ctrl + Shift + R (Windows) 强制刷新
  • 或清除浏览器缓存

2. 开发服务器需要重启

解决方法

# 停止当前服务器 (Ctrl + C)
# 重新启动
pnpm dev

3. TypeScript 类型缓存

解决方法 在 VS Code 中:

  1. Cmd + Shift + P (Mac) 或 Ctrl + Shift + P (Windows)
  2. 输入 "TypeScript: Restart TS Server"
  3. 回车

4. 前端状态未更新

解决方法

  • 退出登录
  • 重新登录
  • 查看成员列表

验证步骤

1. 检查 API 响应

打开浏览器开发者工具:

  1. F12 打开开发者工具
  2. 切换到 Network 标签
  3. 刷新页面
  4. 找到 /api/trees/[treeId]/members 请求
  5. 查看响应数据中是否包含 isFounder 字段

2. 检查控制台

在浏览器控制台中运行:

// 查看当前加载的成员数据
console.log(treeData.members)

// 查找始祖成员
Object.values(treeData.members).filter(m => m.isFounder)

3. 检查成员列表页面

访问成员列表页面,查看:

  • 王德厚的名字前是否有 👑 图标
  • 是否显示"家族始祖"标签(金色)

快速修复

方法一:清除所有缓存并重启

# 1. 停止开发服务器
# 2. 清除 Next.js 缓存
rm -rf .next

# 3. 重新启动
pnpm dev

方法二:重新填充数据库

npx prisma db seed

这会清空并重新创建所有数据,确保 isFounder 字段正确。

预期效果

正确显示时,王德厚应该:

  1. 成员列表页

    • 名字前有 👑 图标(金色)
    • 显示"家族始祖"标签(金色加粗)
    • 在第1代成员中排在最前面
  2. 成员详情页

    • 显示始祖相关信息
  3. 族谱图

    • 作为根节点显示

调试信息

如果问题仍然存在,请检查:

  1. 浏览器控制台错误

    • 是否有 JavaScript 错误
    • 是否有 API 请求失败
  2. Network 请求

    • API 是否返回了 isFounder 字段
    • 数据格式是否正确
  3. React DevTools

    • 检查组件的 props 和 state
    • 确认 member.isFounder 的值

联系支持

如果以上方法都无效,请提供:

  • 浏览器控制台截图
  • Network 标签中的 API 响应
  • 具体的错误信息