본문 바로가기

전체 글102

20231122 퇴근 전 TIL - 게시글 형식의 페이지에서 검색 필터와 게시글 리스트를 구현해두었는데, 여기서 세세한 페이지 이동, 페이지네이션, 검색 필터 유지 등 세밀한 작업이 필요했다. 이때, 한 게시글을 조회했을 때 "목록" 버튼이 존재하는데, 목록 버튼을 통해 게시글 목록으로 되돌아간 경우 기존의 검색 필터, 페이지네이션을 유지해주고 싶었다. -> 기존의 코드는 목록 버튼을 눌렀을 때, 단순히 navigate만 해주어 경로만 바꿔주었고, 다른 동작들에서는 검색 필터와 결과 리스트 값을 초기화해주는것이 의도였기에 navigate 한 경우에도 함께 초기화 코드가 동작하였다. 크게 3가지 경우로 나뉘었다. - 목록 버튼을 클릭하여 게시글 목록으로 이동한 경우 -> 페이지네이션 및 검색 필터 값 유지 - 언어 탭 변경 시 -> 페이.. 2023. 11. 22.
20231120 퇴근 전 TIL - 오늘 배운 점) 해당 상황에서 데이터를 어떻게 다루는지 + 앞으로 어떻게 확장할 가능성이 있는지를 고려해 여러 방안들 중 적절한 방법을 선택할 수 있어야 한다. -> 오늘 드래그앤드롭으로 리스트의 순서를 변경하는 기능을 마무리하던 중, 코드리뷰를 받았다. 구현 상황) 백엔드에 리스트에 순서대로 id만 담아 배열로 전송하면 됌, 즉 배열 내의는 [1,2,3,4] 이런 식으로 1 depth 기존 코드) JSON stringify, parse를 이용해 깊은복사를 해 백엔드에서 초기에 받아온 배열을 복사 -> useState에 초기값으로 전달 -> 새로 만든 state를 순서가 변경될때마다 변경해줌 개선 코드) spread 연산자를 통한 복사로 변경 - stringify, parse가 연산 비용이 더 들어가.. 2023. 11. 20.
20231115 퇴근 전 TIL - 어드민 페이지 권한 관리 코드를 수정하는 업무를 했다. 권한별로 접근 가능한 경로를 컨트롤하는 것이 task였다. 사이드바에서 보여주는 페이지가 각각 부모-자식 관계로 연결되어 있는데, 해당 경로 내에서 CRUD를 위해 이동하는 경로는 API로 받아오는 권한별 경로에 존재하지 않는 상태였다. ex) '/notice' 는 허용 경로에 존재하나 '/notice/create', '/notice/update/21' 등의 경로는 존재하지 않는 상태. 이 상황에서 1. 백엔드 단에서 모든 경로를 추가하여 API로 받아와서 처리하기 2. 프론트엔드 단에서 매핑하여 경로 처리하기 이 두가지 방법이 있었는데, 이미 CRUD는 백엔드에서 미들웨어를 통해 권한 체크하여 동작하므로, 하위 경로들은 매번 추가해주기보다는 프.. 2023. 11. 15.
20231114 퇴근 전 TIL 함수의 역할은 한가지씩만 & 역할 반영한 네이밍이 꼭 필요함. 일어나는 실행 순서와 로직에 따른 순서배치도 중요함. 변수명은 의도를 명확하게 보여줄 수 있도록… 컴포넌트가 너무 방대해질 경우 적절히 분리해야 가독성에 도움이 된다. 스타일링은 당장 필요한 정보가 아니므로 맨 밑에 배치. ⇒ 이런 것들이 몸소 느껴질 정도로 코드 보는 눈이 조금은 생겼다! ⇒ 신경쓰지 않고 작성한 코드가 있을 경우 유지보수 시 지옥을 맛보게 된다. 동료의 코드도 항상 리뷰하여 더 나은 퀄리티의 코드가 저장소에 남아 있도록 해야 팀 전체의 생산성이 향상된다. 그 외 redux toolkit 기본기 복습 / styled-components advanced / styled-components vs. emotion 학습하고 노션에 .. 2023. 11. 15.