题库开发第三天:填页面,联接口

举报
知学题库 发表于 2026/08/17 07:08:16 2026/08/17
【摘要】 今天把前端页面填上了。对照着设计图,一口气把题库列表和添加题目两个页面写完了。列表页的筛选栏三个条件:分类下拉、难度星级、标签输入。卡片组件接收题目数据,用星标展示难度,标签用不同颜色的小圆点区分。卡片右上角加了错题标记,点一下变色,数据存本地localStorage(后端还没加这个字段,先凑合用)。添加题目的表单写起来比预想的花时间。题型切换时,表单项要联动变化:单选题显示选项列表,判断题...

今天把前端页面填上了。对照着设计图,一口气把题库列表和添加题目两个页面写完了。

列表页的筛选栏三个条件:分类下拉、难度星级、标签输入。卡片组件接收题目数据,用星标展示难度,标签用不同颜色的小圆点区分。卡片右上角加了错题标记,点一下变色,数据存本地localStorage(后端还没加这个字段,先凑合用)。

添加题目的表单写起来比预想的花时间。题型切换时,表单项要联动变化:单选题显示选项列表,判断题只显示对错按钮,编程题显示语言选择和代码模板区。用React的useEffect监听题型变化,条件渲染对应的字段组。动态增加选项用了useFieldArray,点"添加选项"自动插入新输入框,点删除移除。

下午开始前后端联调。列表页接上/api/questions接口,分页用pagelimit参数,筛选条件拼到query string里。添加题目表单提交时,把数据组装成接口要求的格式(选择题要把选项拼成数组,判断题存true/false字符串),POST到/api/questions,成功后刷新列表。

联调时发现一个小问题:后端返回的时间字段是ISO字符串,前端直接显示太长,加了个dayjs格式化,只显示YYYY-MM-DD。还有一个跨域的小插曲,前端跑在5173端口,后端在3000,配了个cors中间件搞定。

明天写组卷和刷题模式。刷题要记录答题历史和正确率,估计要在前端维护一个状态对象,每次答题后更新,等后端用户表建好再同步。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。