Browse Source

laanc 상세지도에서 도형 사라지는 현상 수정

pull/2/head
junh_eee(이준희) 1 year ago
parent
commit
4ccdf9ac6a
  1. 7
      src/components/map/mapbox/draw/LanncDraw.js
  2. 5
      src/views/laanc/FlightArea.js
  3. 18
      src/views/laanc/LaancAreaMap.js

7
src/components/map/mapbox/draw/LanncDraw.js

@ -55,7 +55,12 @@ export const LanncDraw = props => {
let dragCircleIdx; let dragCircleIdx;
useEffect(() => { useEffect(() => {
if (mapControl.drawType && detailLayer) drawInit(); const areaType = props.areaCoordList[0].areaType;
const drawType = mapControl.drawType;
if (areaType !== drawType && detailLayer) {
drawInit();
}
}, [mapControl.drawType, detailLayer]); }, [mapControl.drawType, detailLayer]);
useEffect(() => { useEffect(() => {

5
src/views/laanc/FlightArea.js

@ -159,10 +159,9 @@ export default function FlightArea({ centeredModal, setCenteredModal }) {
// const ele = document.getElementById('mapboxgl-popup'); // const ele = document.getElementById('mapboxgl-popup');
// const eleArr = Array.from(ele); // const eleArr = Array.from(ele);
// eleArr?.forEach(marker => marker.remove()); // eleArr?.forEach(marker => marker.remove());
mapObject.setPaintProperty('waypoint', 'circle-radius', 10);
mapObject.getSource('preview').setData(previewGeo);
} }
mapObject.setPaintProperty('waypoint', 'circle-radius', 10);
mapObject.getSource('preview').setData(previewGeo);
} }
} }
}; };

18
src/views/laanc/LaancAreaMap.js

@ -103,13 +103,13 @@ export default function LaancAreaMap({ centeredModal, mapContainer }) {
}; };
//지역 검색 //지역 검색
const handlerSearch = async () => { const handlerSearchRes = async () => {
const res = await flightPlanAPI.searchArea({ query: query }); const res = await flightPlanAPI.searchArea({ query: query });
setIsSearch(true); setIsSearch(true);
setSearchRes(res.data.items); setSearchRes(res.data.items);
}; };
const handlerChange = e => { const handlerSearchChange = e => {
const { name, value } = e.target; const { name, value } = e.target;
if (name == 'searchInput') { if (name == 'searchInput') {
@ -117,13 +117,13 @@ export default function LaancAreaMap({ centeredModal, mapContainer }) {
} }
}; };
const handlerEnter = e => { const handlerSearchEnter = e => {
if (e.key == 'Enter') { if (e.key == 'Enter') {
handlerSearch(); handlerSearchRes();
} }
}; };
const handlerCoord = (mapx, mapy) => { const handlerSearchCoord = (mapx, mapy) => {
const numberString = [mapx, mapy]; const numberString = [mapx, mapy];
const latlng = []; const latlng = [];
@ -220,7 +220,7 @@ export default function LaancAreaMap({ centeredModal, mapContainer }) {
<InputGroup className='search-feather'> <InputGroup className='search-feather'>
<InputGroupAddon addonType='prepend'> <InputGroupAddon addonType='prepend'>
<InputGroupText> <InputGroupText>
<Search bssize={14} onClick={handlerSearch} /> <Search bssize={14} onClick={handlerSearchRes} />
</InputGroupText> </InputGroupText>
</InputGroupAddon> </InputGroupAddon>
<Input <Input
@ -230,8 +230,8 @@ export default function LaancAreaMap({ centeredModal, mapContainer }) {
bssize='sm' bssize='sm'
autoComplete='off' autoComplete='off'
placeholder='검색명을 입력하세요.' placeholder='검색명을 입력하세요.'
onChange={handlerChange} onChange={handlerSearchChange}
onKeyPress={handlerEnter} onKeyPress={handlerSearchEnter}
/> />
</InputGroup> </InputGroup>
<div className='search-result-comp'> <div className='search-result-comp'>
@ -246,7 +246,7 @@ export default function LaancAreaMap({ centeredModal, mapContainer }) {
<li <li
key={search.mapx + search.mapy} key={search.mapx + search.mapy}
onClick={() => onClick={() =>
handlerCoord(search.mapx, search.mapy) handlerSearchCoord(search.mapx, search.mapy)
} }
> >
<a> <a>

Loading…
Cancel
Save