From 31aa5f6e7461ebf479e11c97dbe6e315947fe3f5 Mon Sep 17 00:00:00 2001 From: yuetsh <517252939@qq.com> Date: Sun, 27 Sep 2026 20:08:47 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E5=89=8D=E5=8F=B0):=20=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E5=90=8E=E9=A6=96=E9=A1=B5=E6=94=B9=E6=88=90=E4=B8=AA=E4=BA=BA?= =?UTF-8?q?=E9=A6=96=E9=A1=B5=EF=BC=9B=E9=A2=98=E7=9B=AE=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E9=A1=B5=E7=9A=84=E4=BB=A3=E7=A0=81=E8=A6=81=E6=B1=82=E6=8C=AA?= =?UTF-8?q?=E5=88=B0=E6=9C=80=E5=89=8D=E9=9D=A2=E3=80=81=E6=A0=B7=E4=BE=8B?= =?UTF-8?q?=E5=B9=B6=E6=8E=92=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 登录后 / 是个人首页:继续学习、最近提交、进行中/即将开始的比赛、公告; 没登录仍是题目列表,题目列表另有 /problem 地址,顶栏「题目」指向它 - 继续学习按服务端留痕取最近打开的一课,不用 localStorage(机房一机多人) - 题目详情:标题下加难度与时空限制,代码要求提到最前,小节收紧, 样例输入/输出并排;工具栏「提交信息」「更多操作」改为「本题提交」「更多」 Co-Authored-By: Claude Opus 5.5 --- apps/web/src/oj/home/dashboard.vue | 486 ++++++++++++++++++ apps/web/src/oj/home/index.vue | 22 + .../oj/problem/components/EditorToolbar.vue | 10 +- .../oj/problem/components/ProblemContent.vue | 334 +++++++----- apps/web/src/routes.ts | 4 +- apps/web/src/shared/components/Header.vue | 6 +- 6 files changed, 731 insertions(+), 131 deletions(-) create mode 100644 apps/web/src/oj/home/dashboard.vue create mode 100644 apps/web/src/oj/home/index.vue diff --git a/apps/web/src/oj/home/dashboard.vue b/apps/web/src/oj/home/dashboard.vue new file mode 100644 index 0000000..6f545d5 --- /dev/null +++ b/apps/web/src/oj/home/dashboard.vue @@ -0,0 +1,486 @@ + + + + + diff --git a/apps/web/src/oj/home/index.vue b/apps/web/src/oj/home/index.vue new file mode 100644 index 0000000..0a9f6d7 --- /dev/null +++ b/apps/web/src/oj/home/index.vue @@ -0,0 +1,22 @@ + + + diff --git a/apps/web/src/oj/problem/components/EditorToolbar.vue b/apps/web/src/oj/problem/components/EditorToolbar.vue index 664e61f..0a103bf 100644 --- a/apps/web/src/oj/problem/components/EditorToolbar.vue +++ b/apps/web/src/oj/problem/components/EditorToolbar.vue @@ -76,7 +76,7 @@ const showCollabBar = computed(() => collabHere.value && userStore.isTeacherOrAb /** * 状态全塞进按钮本身。原来旁边还挂一个 n-tag 说明排队情况,一行工具栏 - * (语言 / 提交 / 提交信息 / 课堂统计 / 更多操作 / 求助)在 1280 的机房屏上放不下。 + * (语言 / 提交 / 本题提交 / 课堂统计 / 更多 / 求助)在 1280 的机房屏上放不下。 */ const helpButtonText = computed(() => { if (collabStore.helpStatus === "active") { @@ -122,7 +122,7 @@ const menuOptions = computed(() => { if (!isDesktop.value) { if (showGoSubmissionButton.value) { options.push({ - label: "提交信息", + label: "本题提交", key: "submissions", }) } @@ -272,7 +272,7 @@ onMounted(() => { - 提交信息 + 本题提交 { 课堂统计 - + - 更多操作 + 更多