@i4song
useMarkers 파일에서 useEffect가 storeList이 업데이트 되면 업데이트 된 storeList 정보를 new kakao.maps.Marker 을 사용하여 지도에 추가해주는 함수라고 생각됩니다.
이후 - 추가한 markers 을 markers 변수에 추가하는 것까지 되어 있지만, 다시 storeList 가 수정되어 다시 useEffect 가 호출 되었을 때 변경된 사항들을 기존 추가된 markers 와 비교하여 추가/삭제 하는 것이 아닌 다시 전부다 추가될 것 같습니다.
그러면 - 기존에 추가했던 markers 정보가 없어지기 때문에 삭제는 불가능하고 추가할때마다 기존에 추가된 markers 와 같은 위치에 duplicate 되어 추가될 것 같습니다.
해결하기 위해 모든 마커를 전부 삭제하고 다시 추가하거나 바뀐 마커만 추가하는 알고리즘이 있어야할 것 같습니다.
@i4song useMarkers 파일에서 useEffect가 storeList이 업데이트 되면 업데이트 된 storeList 정보를
new kakao.maps.Marker
을 사용하여 지도에 추가해주는 함수라고 생각됩니다.이후 - 추가한 markers 을 markers 변수에 추가하는 것까지 되어 있지만, 다시 storeList 가 수정되어 다시 useEffect 가 호출 되었을 때 변경된 사항들을 기존 추가된 markers 와 비교하여 추가/삭제 하는 것이 아닌 다시 전부다 추가될 것 같습니다.
그러면 - 기존에 추가했던 markers 정보가 없어지기 때문에 삭제는 불가능하고 추가할때마다 기존에 추가된 markers 와 같은 위치에 duplicate 되어 추가될 것 같습니다.
해결하기 위해 모든 마커를 전부 삭제하고 다시 추가하거나 바뀐 마커만 추가하는 알고리즘이 있어야할 것 같습니다.
_Originally posted by @junglesub in https://github.com/milideal/client/pull/18#discussion_r1345221087_