From a8de8f39329fef5ee2d5a6f38435512a9493a2d0 Mon Sep 17 00:00:00 2001 From: yuetsh <517252939@qq.com> Date: Thu, 17 Sep 2026 02:03:04 -0600 Subject: [PATCH] =?UTF-8?q?feat(=E6=8E=92=E5=90=8D):=20=E6=9C=AC=E5=91=A8?= =?UTF-8?q?=E8=BF=9B=E6=AD=A5=E6=A6=9C=E7=A7=BB=E5=88=B0=E5=85=A8=E6=9C=8D?= =?UTF-8?q?=20Top100=20=E5=8F=B3=E8=BE=B9=EF=BC=8C=E5=B7=A6=202/3=20?= =?UTF-8?q?=E5=8F=B3=201/3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 两张榜分开上下放的时候,谁也看不见谁:上面那张是历史全部 AC 的总榜,名次几乎不动; 下面那张的分母只有这一周。并排摆在同一屏里,「总榜追不上」和「这周还能进前十」 才是一眼对照出来的。桌面 cols=3、Top100 占 2 栏,移动端退回 cols=1 上下堆叠。 周榜宽度从整屏缩到 1/3,列跟着收:列头去掉「本周」前缀(卡片标题已经写着), 宽度压到 70/120min/100/90,用户名加 ellipsis tooltip —— 1280 那一档也不出横向滚动条。 Co-Authored-By: Claude Opus 5 --- apps/web/src/oj/rank/list.vue | 199 +++++++++++++++++++--------------- 1 file changed, 109 insertions(+), 90 deletions(-) diff --git a/apps/web/src/oj/rank/list.vue b/apps/web/src/oj/rank/list.vue index bbfad61..b69e464 100644 --- a/apps/web/src/oj/rank/list.vue +++ b/apps/web/src/oj/rank/list.vue @@ -317,11 +317,13 @@ const subOptions = computed( durationFromValue(LONG_DURATION_OPTIONS[1]!.value)!, ) +// 周榜占的是三栏里的一栏,列头不再重复「本周」(卡片标题已经写着), +// 宽度也压到 1280 那一档能整张放下,不出横向滚动条 const weeklyColumns: DataTableColumn[] = [ { title: renderTableTitle("排名", "streamline-emojis:flexed-biceps-1"), key: "rank", - width: 80, + width: 70, align: "center", // rank 是服务端给的周榜名次,不是行号 —— 换算回 Index 要的 0 基下标 render: (row) => h(Index, { index: row.rank - 1, page: 1, limit: 10 }), @@ -332,7 +334,8 @@ const weeklyColumns: DataTableColumn[] = [ "streamline-emojis:smiling-face-with-sunglasses", ), key: "username", - minWidth: 160, + minWidth: 120, + ellipsis: { tooltip: true }, render: (row) => h( NButton, @@ -345,15 +348,15 @@ const weeklyColumns: DataTableColumn[] = [ ), }, { - title: renderTableTitle("本周新解决", "fluent-emoji:party-popper"), + title: renderTableTitle("新解决", "fluent-emoji:party-popper"), key: "solvedCount", - width: 120, + width: 100, align: "center", }, { - title: renderTableTitle("本周提交", "streamline-emojis:rocket"), + title: renderTableTitle("提交", "streamline-emojis:rocket"), key: "submissionCount", - width: 110, + width: 90, align: "center", }, ] @@ -622,92 +625,108 @@ watch( - - - - - - -