山东大学软件学院项目实训-基于大模型的可解释英语写作评估与反馈系统(四)
·
一、主要任务
- 展示返回结果(JSON渲染)
- 作文提交 loading 状态
二、技术理解
1. JSON 结果渲染展示实现
核心技术逻辑
- 数据流转:提交完成后,后端返回的 JSON 分析数据存入
assessmentStore,ResultPage.vue读取 store 中的数据进行渲染。 - 渲染方式:
- 结构化渲染:自定义组件(如
EssayViewer.vue)解析 JSON 字段,将分数、评语、关键词等数据转为文本 / 图表。 - JSON 树状展示:引入
vue-json-viewer等库,将完整的 JSON 响应渲染为可折叠的树状结构,方便调试和查看原始数据。 - 可视化渲染:通过
BaseEChart.vue将 JSON 中的分数、维度数据渲染为雷达图 / 柱状图。
- 结构化渲染:自定义组件(如
2. 作文提交 + Loading 状态实现
核心技术逻辑
- 状态管理:
- 用
ref定义局部isLoading变量,或通过assessmentStore.ts全局管理提交状态。 - 提交请求前设
isLoading = true,请求成功 / 失败后重置为false,避免重复提交。
- 用
- UI 交互实现:
- 提交按钮禁用 + 加载图标(如 Element Plus 的
loading属性按钮)。 - 全屏 / 局部遮罩层(如
v-loading指令),防止用户重复操作。
- 提交按钮禁用 + 加载图标(如 Element Plus 的
- 请求流程:
- 用户输入作文内容 → 触发提交事件
SubmitPage.vue调用submitMode.ts中的提交函数assessmentStore更新loading状态,调用http.ts发起 POST 请求- 请求完成后,更新
loading为false,并将结果存入 store,跳转到ResultPage
更多推荐



所有评论(0)