From 250b067d8725b624afe19190e89b9c7a5ebf36a4 Mon Sep 17 00:00:00 2001 From: joungmin Date: Wed, 17 Jun 2026 09:42:37 +0900 Subject: [PATCH] =?UTF-8?q?fix(map):=20NaverMapView=20selected=20=EB=B3=80?= =?UTF-8?q?=EA=B2=BD=20=EC=8B=9C=20=EC=9E=90=EB=8F=99=20panTo=20+=20zoom?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - GoogleMapView에는 있던 useEffect [selected] 패턴이 NaverMapView에 누락 - 마커/클러스터/리스트 어디서 선택해도 그 식당이 중앙 + zoom 16 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.7 --- CHANGELOG.md | 6 ++++++ frontend/src/components/NaverMapView.tsx | 9 +++++++++ 2 files changed, 15 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index fe8b541..37d7780 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ --- +## 2026-06-17 + +### 🎯 NaverMapView selected 자동 panTo + zoom (v0.1.64) +- 마커/클러스터/리스트 어디서 선택해도 그 식당이 화면 중앙으로 + zoom 16 +- GoogleMapView에는 이미 있던 useEffect [selected] 패턴을 동일하게 추가 + ## 2026-06-16 ### 🧹 미커밋 잡변경 정리 + 5개 분리 commit (v0.1.63) diff --git a/frontend/src/components/NaverMapView.tsx b/frontend/src/components/NaverMapView.tsx index 96b3558..56edc6b 100644 --- a/frontend/src/components/NaverMapView.tsx +++ b/frontend/src/components/NaverMapView.tsx @@ -239,6 +239,15 @@ export default function NaverMapView({ if (flyTo.zoom) m.setZoom(flyTo.zoom, true); }, [flyTo]); + // selected 변경 시 자동 panTo + zoom (GoogleMapView와 동일 동작) + useEffect(() => { + const m = mapRef.current; + if (!m || !selected || !window.naver?.maps) return; + if (selected.latitude == null || selected.longitude == null) return; + m.panTo(new window.naver.maps.LatLng(selected.latitude, selected.longitude)); + m.setZoom(16, true); + }, [selected]); + // 클러스터 계산 (bounds/zoom 변경 시) const clusters = useMemo(() => { if (!bounds) return [];