From 50c41d8759ccaef532fd8dc8415ce564d61f2f2f Mon Sep 17 00:00:00 2001 From: wangxiaogang <1433729587@qq.com> Date: Mon, 8 Jun 2026 15:50:30 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=9F=8B=E7=82=B9=E7=BB=9F=E8=AE=A1?= =?UTF-8?q?=E5=92=8C=E6=97=A5=E5=BF=97=E6=9F=A5=E8=AF=A2=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - track.vue: 修复日期格式化(处理 ISO 格式) - track.vue: 筛选标签改为可滚动 - logs.ts: 修复 queryLogs 参数传递(移除 undefined date) --- client/src/api/logs.ts | 3 ++- client/src/pages/admin/track.vue | 22 ++++++++++++++++++---- 2 files changed, 20 insertions(+), 5 deletions(-) diff --git a/client/src/api/logs.ts b/client/src/api/logs.ts index d68dd95..67b49d2 100644 --- a/client/src/api/logs.ts +++ b/client/src/api/logs.ts @@ -60,7 +60,8 @@ export function queryLogs(params: { page?: number pageSize?: number }): Promise<{ lines: string[]; total: number; page: number; pageSize: number }> { - return request({ url: `/logs/${params.date}`, data: { ...params, date: undefined } }) + const { date, ...queryParams } = params + return request({ url: `/logs/${date}`, data: queryParams }) } /** 获取埋点统计 */ diff --git a/client/src/pages/admin/track.vue b/client/src/pages/admin/track.vue index d2b4f97..2b0a6d8 100644 --- a/client/src/pages/admin/track.vue +++ b/client/src/pages/admin/track.vue @@ -30,7 +30,7 @@ 最近7天 - {{ day.date.slice(5) }} + {{ formatDate(day.date) }} @@ -57,13 +57,14 @@ 事件记录 - + 全部 页面 操作 错误 API错误 - + 启动 + @@ -187,6 +188,18 @@ function getEventClass(event: string): string { return 'page' } +/** 格式化日期(处理 MySQL DATE 类型的 ISO 格式) */ +function formatDate(dateStr: string): string { + if (!dateStr) return '' + // 处理 2026-06-08T00:00:00.000Z 格式 + const datePart = dateStr.split('T')[0] + const parts = datePart.split('-') + if (parts.length === 3) { + return `${parseInt(parts[1])}/${parseInt(parts[2])}` + } + return dateStr +} + function formatTime(dateStr: string): string { const d = new Date(dateStr) const now = new Date() @@ -371,7 +384,8 @@ function goBack() { .filter-tabs { display: flex; gap: $space-xs; - flex-wrap: wrap; + white-space: nowrap; + width: 100%; } .filter-tab {