From 0cb0b38437d813edeb0964e0eba1913245faccb6 Mon Sep 17 00:00:00 2001 From: shy3130 <415333856@qq.com> Date: Mon, 20 Jul 2026 17:10:15 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=9C=8B=E6=9D=BF=E7=9B=91?= =?UTF-8?q?=E6=8E=A7=E9=80=9A=E7=9F=A5=E4=B8=AA=E8=82=A1=E5=BC=B9=E7=AA=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/pages/Dashboard.tsx | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/frontend/src/pages/Dashboard.tsx b/frontend/src/pages/Dashboard.tsx index d2405bd..8d0a96d 100644 --- a/frontend/src/pages/Dashboard.tsx +++ b/frontend/src/pages/Dashboard.tsx @@ -94,8 +94,7 @@ const _SEVERITY_BAR: Record = { info: 'bg-accent/40', warn: 'bg-warning', critical: 'bg-danger', } -function MonitorWidget() { - const [previewEv, setPreviewEv] = useState(null) +function MonitorWidget({ onStockClick }: { onStockClick: (event: AlertEvent) => void }) { const alerts = useQuery({ queryKey: ['alerts', ''], queryFn: () => api.alertsList({ days: 7, limit: 10 }), @@ -134,7 +133,7 @@ function MonitorWidget() { {/* 第一行: 代码 + 名称 + 价格 + 涨跌幅 (点击代码/名称弹日K) */}
- - setPreviewEv(null)} - /> ) } @@ -533,7 +519,7 @@ export function Dashboard() { const qc = useQueryClient() const [selectedDate, setSelectedDate] = useState() const [manualFetching, setManualFetching] = useState(false) - const [previewStock, setPreviewStock] = useState<{symbol: string; name?: string} | null>(null) + const [previewStock, setPreviewStock] = useState<{symbol: string; name?: string; alert?: AlertEvent} | null>(null) // 首次使用(无数据 + 未完成引导)自动弹窗: 同一会话只弹一次 const [showWelcomeModal, setShowWelcomeModal] = useState(false) const dataStatus = useDataStatus({ staleTime: 60_000 }) @@ -826,7 +812,9 @@ export function Dashboard() { - + { + if (event.symbol) setPreviewStock({ symbol: event.symbol, name: event.name ?? undefined, alert: event }) + }} /> @@ -834,6 +822,13 @@ export function Dashboard() { setPreviewStock(null)} />