From 93174babbcbe3e7f28ef31d4e692ba962219e11e Mon Sep 17 00:00:00 2001 From: "2569718930@qq.com" <2569718930@qq.com> Date: Mon, 25 May 2026 07:20:24 +0800 Subject: [PATCH] =?UTF-8?q?=E7=82=B9=E5=87=BB=E5=9F=8E=E5=B8=82=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E9=80=89=E4=B8=AD=E9=A6=96=E6=9D=A1=E5=90=88=E7=BA=A6?= =?UTF-8?q?=E5=B9=B6=E5=8A=A0=E8=BD=BD=E8=B5=B0=E5=8A=BF=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/components/dashboard/ScanTerminalDashboard.tsx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/frontend/components/dashboard/ScanTerminalDashboard.tsx b/frontend/components/dashboard/ScanTerminalDashboard.tsx index 34f2c424..b03b15c9 100644 --- a/frontend/components/dashboard/ScanTerminalDashboard.tsx +++ b/frontend/components/dashboard/ScanTerminalDashboard.tsx @@ -605,6 +605,14 @@ function PolyWeatherTerminal({ } }, [filteredRegionRows, selectedRow, setSelectedRow]); + useEffect(() => { + if (!selectedCity) return; + const cityRows = filteredRegionRows.filter((r) => String(r.city || "").toLowerCase() === selectedCity); + if (cityRows.length && (!selectedRow || !cityRows.some((r) => r.id === selectedRow.id))) { + setSelectedRow(cityRows[0]); + } + }, [selectedCity, filteredRegionRows, selectedRow, setSelectedRow]); + const avgEdge = useMemo(() => { const list = filteredRegionRows; return list.reduce((sum, row) => sum + Number(row.edge_percent || 0), 0) / Math.max(list.length, 1);