Closed brightchul closed 1 year ago
refactor/main-common-ui 브랜치로 @Ssoon-m 님이 몇가지 제안을 주셔서 해당 부분 반영 이후 다시 리뷰 오픈할 예정
제안사항
수정 : 중첩 레이아웃 구조로 path variable 별로 tab category 진입하게 변경 이유 : 데이터 프리페칭을 위해 구조 변경했습니다. (url 변경, 프리패칭은 서버컴포넌트 이용)
수정 : TabCategory컴포넌트에서 currentChlidren부분 제거 이유 : label과 href에 대한 constants 값만 props로 전달
수정 : zustand 추가 이유 : 이전의 TabBar상태를 기억하기 위함
The latest updates on your projects. Learn more about Vercel for Git ↗︎ | Name | Preview |
---|---|---|
handpyeon-admin | Visit Preview |
The latest updates on your projects. Learn more about Vercel for Git ↗︎ | Name | Preview |
---|---|---|
handpyeon-web | Visit Preview |
한 줄 요약
10
자세한 내용
상단 헤더
<LogoIcon>
활용추천 콘텐츠 배너 영역
편의점 별 카테고리
width:100%
기준으로 동일 너비TabCategory
+OneCategory
탭 메뉴
CategoryChildren
+HotTrend + DiscountItems
조합으로 사용됨TabCategory
안에서 활성화된 탭 메뉴에 따라서 개별로 보여짐기타 고려사항
카테고리 및 탭 메뉴 관련 구현 사항
각 케이스에 따라서 조건부 렌더링을 시도할 경우 해당 조건이 아닐 경우 렌더링이 아예 되지 않게 되면서 상태가 사라짐. 따라서 개별 탭, 카테고리별 지역 상태를 유지하기 위해서는 2가지 방법이 있음
display:hidden
를 적용, 즉 개별 컴포넌트들을 유지하고 css에서 안보이게 처리2번으로 적용 및 시도했던 내용
현재 작업이 메인페이지 안에서의 작업이며 메인 페이지만의 상태관리인데 만약 다른 페이지로 이동했을때도 전역 상태에 상태 유지 또는 관리는 하는 것은 관리포인트 증가로 생각이 들어서 1번 방법은 사용하지 않기로 했음. 그래서 2번을 적용 2번을 적용하기 위해 `MatchDisplay` 컴포넌트를 추가 (commit f9410f4a2e8a45b2d9df4b516cca49479833a58d) ```jsx현재는 @Ssoon-m 님의 제안에 따라서 1번 방법으로 다시 변경함
file-system based router, Dynamic Routes, route layout , zustand를 활용해서 좀더 구조적, 단순하게 하면서 상태 관리를 통해서 탭 관리를 하도록 수정함
43fbc75484a9d42ddcda40697f9ae2f6be69aadc 커밋부터 수정함