본문 바로가기
반응형

프로젝트/코드스테이츠 - 4주프로젝트28

리팩토링 : useResetRecoilState 이용하여 지도 클릭시 지역검색창 초기화되도록 함 간단하다. useEffect에 useResetRecoilState 함수 할당하였다. const usersAreaReset = useResetRecoilState(usersArea); const usersSiggReset = useResetRecoilState(usersSigg); ..(생략).. useEffect(() => { //클락하면 지역검색창 초기화 usersAreaReset(); usersSiggReset(); ..(생략).. }, [wtm.x, wtm.y]); //! 평면좌표 바뀔때마다 실행 지도 클릭시 지역검색창이 실제 화면과 일치하지 않아서 어색함이 있었는데, 지도를 클릭할때마다 '지역선택'이 되도록 하였다. 2022. 1. 3.
위치기반시스템 flow 1. ~/home 입장시 navigation.geolocation 함수를 통해 유저의 위치를 획득한다. 현재위치를 리코일 전역state 인 atom 을 사용 하여 nowLocation , defaultPosition에 할당한다. setDefaultPosition 함수를 카카오톡 온클릭 메소드에 등록하여 지도 클릭시마다 변경되도록 하였다. useEffect에 할당하고 의존성배열을 빈배열로 하여 렌더링시 한번만 실행되도록 함. 2. 리코일에서는 defaultPosition atom을 getWTM selector가 참조하도록 하였다. getWTM은 위경도를 평면좌표로 바꾸어주는 순수함수이다. 지도에 온클릭이벤트가 발생하여 defaultPosition이 변경되면 이를 참조하는 getWTM selector가 실행.. 2022. 1. 3.
리팩토링 : httpOnly를 true로 설정하고 로긴상태 유지하는법 알아냄 사실 내가 알아낸건 아니고 여기저기 물어봐서 하는법을 알게 된거다 그래도 짜릿짜릿하다. 기분이 좋아서 사진을 노을로 했다. 내가 썼던 아래글 완전히 틀린것으로 판명났다.! https://wnsdufdl.tistory.com/251?category=1037375 리프레시토큰 없이는 쿠키로 로그인상태결정을 못한다(보안포기하면 가능) 배포전에는 엑세스토큰을 쿠키에넣고 매번 쿠키를 검사하여 로그인상태를 결정했다. 그런데 쿠키 보안설정을 한 후 배포를 하고나서 이것저것 눌러보는데 새로고침할때마다 로긴상태가 초기 wnsdufdl.tistory.com 1. httpOnly:true 설정한다. else { delete data.dataValues.password; const accessToken = generateAc.. 2022. 1. 1.
리팩토링 : 카카오맵 연속클릭시 하얀지도뜨는 버그 해결 계속 지도를 클릭해대면 지도가 하얘진다. 처음에는 계속 axios를 찾았다. 모든 axios에 로딩신호를 할당하고, setTimeout() 함수도 넣어보고 별별짓 다해봤지만 해결되지 않았다. 길을 잘못들었다는 생각이 들어 코드를 한줄한줄 자세히 바라보았다. placeList... 이놈이 만약 초기화되었다면??? 그동안 useState, useRecoilState에 뒷통수를 많이 맞은 나는 이녀석을 보자마자 의심을 하지 않을 수 없었다. console.log를 찍어보니 역시나 빈배열이었다. 초기화되는 짧은 순간에 온클릭이벤트가 발생한다면 반복문이 빈배열을 순회하게 되는 것이었다! 빈배열을 순회하게 되면서 마커에 할당할 좌표가 없고, 하얀지도가 렌더링되는 것이다. 위 코드처럼 로딩인디케이터의 조건을 reco.. 2021. 12. 25.
반응형