카테고리 없음
export const MAIN_PATH = () => '/';
쩨이1
2024. 5. 9. 16:58
export const MAIN_PATH = () => '/';
export const AUTH_PATH = () => '/auth';
export const SEARCH_PATH = (searchWord: string) => `/search/${searchWord}`;
export const USER_PATH = (userEmail: string) => `/user/${userEmail}`;
export const BOARD_PATH = () => '/board';
export const BOARD_DETAIL_PATH = (boardNumber: string | number) => `detail/${boardNumber}`;
export const BOARD_WRITE_PATH = () => 'write';
export const BOARD_UPDATE_PATH = (boardNumber: string | number) => `update/${boardNumber}`;
이 경로 상수들은 애플리케이션에서 라우팅을 관리하고, 일관성을 유지하며, 유지보수를 용이하게 하는 데 사용됩니다. 이를 통해 개발자는 코드베이스의 여러 곳에서 경로를 재사용하고, 경로 변경에 따른 오류를 최소화할 수 있습니다.
- AUTH_PATH:
- 인증(로그인/회원가입) 페이지의 경로입니다. '/' 뒤에 'auth'를 붙여서 '/auth' 경로를 반환합니다.
매개변수를 사용하는 경로 상수는 동적으로 경로를 생성할 수 있습니다.
예를 들어, SEARCH_PATH('my-search')를 호출하면 '/search/my-search' 경로를 생성합니다.
App.tsx에서
'/' 를 {MAIN_PATH()}로 바꾼다.
이하 동
<Routes>
<Route element={<Container />}>
<Route path={MAIN_PATH()} element={<Main />}/>
<Route path={AUTH_PATH()} element={<Authentication/>} />
<Route path= {SEARCH_PATH(`:searchWord`)} element={<Search />}/>
<Route path= {USER_PATH(`userEmail`)} element={<User />}/>
<Route path= {BOARD_PATH()}>
<Route path={BOARD_WRITE_PATH()} element={<BoardWrite />} />
<Route path={BOARD_DETAIL_PATH(':boardNumber')} element={<BoardDetail />} />
<Route path={BOARD_UPDATE_PATH(':boardNumber')} element={<BoardUpdate />} />
</Route>
<Route path='*' element={<h1>404 Not Found</h1>} />
</Route>
</Routes>