主要改动: 1. 组件拆分:将Question.tsx(605行)拆分为4个子组件(303行) - QuestionProgress: 进度条和统计显示 - QuestionCard: 题目卡片和答题界面 - AnswerResult: 答案结果展示 - CompletionSummary: 完成统计摘要 2. 新增功能: - 答题进度条:显示当前进度、正确数、错误数 - 进度保存:使用localStorage持久化答题进度 - 完成统计:答完所有题目后显示统计摘要和正确率 - 从第一题开始:改为顺序答题而非随机 3. UI优化: - 移除右上角统计按钮 - 移除底部随机题目、题目列表、筛选按钮 - 移除"开始xxx答题"提示消息 - 简化页面布局 4. 代码优化: - 提高代码可维护性和可测试性 - 单一职责原则,每个组件负责一个特定功能 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
27 lines
523 B
Go
27 lines
523 B
Go
package main
|
|
|
|
import (
|
|
"ankao/internal/database"
|
|
"ankao/internal/models"
|
|
"fmt"
|
|
"log"
|
|
)
|
|
|
|
func main() {
|
|
// 初始化数据库
|
|
if err := database.InitDB(); err != nil {
|
|
log.Fatal("数据库初始化失败:", err)
|
|
}
|
|
|
|
db := database.GetDB()
|
|
|
|
// 查询前5条记录
|
|
var questions []models.PracticeQuestion
|
|
db.Limit(5).Find(&questions)
|
|
|
|
fmt.Println("数据库中的题目:")
|
|
for _, q := range questions {
|
|
fmt.Printf("ID: %d, QuestionID: %s, Type: %s, TypeName: %s\n", q.ID, q.QuestionID, q.Type, q.TypeName)
|
|
}
|
|
}
|