Skip to content

Latest commit

 

History

History
69 lines (49 loc) · 2.46 KB

File metadata and controls

69 lines (49 loc) · 2.46 KB

🔍 首页问题选项消失问题诊断与修复

问题分析

🐛 问题描述

在首页输入想法后,点击"开始生成"按钮跳转到问题页面,但是:

  1. 问题选项没有显示 - 只看到进度条和"开始生成"文本
  2. 加载状态持续显示 - 看起来卡在生成问题过程中

🔍 根本原因

异步状态管理问题

  1. setIdea(idea.trim())setGenerationStep('questions') 同时调用
  2. setGenerationStep 立即跳转到 /generate 页面
  3. QuestionsStep 组件加载时,questions 数组可能还是空的(因为问题生成是异步的)
  4. QuestionsStep 的 useEffect 每次收到新的 questions 都会重置 currentIndex 为 0

✅ 已实施的修复

  1. 移除了不必要的异步延迟 - 去掉了 await setGenerationStep('questions')
  2. 简化了跳转逻辑 - 直接调用 setGenerationStep('questions') 然后 router.push('/generate')

🧪 测试验证

执行以下测试来验证修复:

# 1. 测试问题生成
curl -X POST http://localhost:3000/api/generate/questions \
  -H "Content-Type: application/json" \
  -d '{"idea":"一个帮助开发者快速找到代码片段的工具"}'

# 应该返回完整的问题对象

# 2. 测试完整流程
# 在浏览器中:http://localhost:3000
# 1. 输入想法:一个帮助开发者快速找到代码片段的工具
# 2. 点击"开始生成"
# 3. 应该看到问题选项和示例

🚀 预期结果

修复后,你应该能看到:

  1. ✅ 问题标题:"让我们深入了解你的想法"
  2. ✅ 问题描述:"回答3个简单问题,帮助 AI 生成更精准的产品页面"
  3. ✅ 问题输入框,显示:"你的工具主要帮助什么角色的用户提升效率?"
  4. ✅ 示例按钮:"自由职业者管理多项目、小团队协作办公、远程工作者提高效率"
  5. ✅ "下一个"按钮和导航功能正常

📋 故障排除

如果问题仍然存在:

  1. 检查浏览器开发者工具

    • Network 标签查看 /api/generate/questions 请求
    • Console 查看是否有 JavaScript 错误
  2. 检查 ZUSTAND 状态

    • 在 generate 页面打开浏览器开发者工具
    • 在 Console 中输入:window.__ZUSTAND_DEVTOOLS__?.state?.generationFlow?.questions
  3. 检查 API 响应

    • 确认 API 返回了 questions 数组
    • 检查 success: truedata.questions

修复要点:移除了异步操作的不确定性,确保状态同步更新。