작성자 : 최시운
작성일시: 221207
주제: URL Parmeter Routing
프로필 레이아웃을 만들고 URL Parameter를 사용해서 파라미터에 해당하는 유저 프로필 페이지를 보여주고자 했습니다.
그래서 기존 App.tsx의 라우팅을 아래와 같이 설정해서 중첩 라우팅이 가능하게 하였습니다.
<Route path={`${RoutePath.PROFILE}`}>
<Route path=":userId" element={<ProfilePage />} />
<Route path="" element={<ProfilePage />} />
</Route>
구현 방식으로는 뒤에 파라미터가 붙지 않는 디폴트 페이지로 이동시
const { userId } = useParams();
const profileUserId = userId ?
parseInt(userId as string, 10) : authStorage.get();
//authStorage.get()은 현재 로그인한 유저의 id를 가져오는 코드.
해당 코드를 사용해서 파라미터가 있으면 파라미터의 유저 아이디를, 없으면 authStorage.get을 통해 현재 로그한 유저의 아이디를 profileUserId로 설정하게 하였습니다.