첫 화면
첫화면(localhost:3000)에서 로그인 시,
JWT토큰을 응답받고 localstorage에 저장하고 /main 으로 이동하게 로직을 짰는데,
로그인을 하지 않았을 때는 /main으로 들어오지 못하게 하려고 한다.
막는 법
<Route path='/main' element={<Main />} />
"/main"에 해당하는 컴포넌트 <Main/>에 가서
const jwtToken = localStorage.getItem("jwtToken");
useEffect(() => {
if (jwtToken == null) return nav("/");
fetchData();
}, []);
Main 컴포넌트가 첫 마운트 됐을 때 안에 코드를 실행하게 했다.
로그인 시 localStorage에 넣은 토큰을 가져와서 null인 경우에 첫 화면으로 돌아가게 했다.
다른 방법도 여러가지 있을텐데 실제 서비스가 아닌 개인 프로젝트 용이라 일단 이렇게 해놨다.
'React' 카테고리의 다른 글
[React] 환경변수(.env 파일) 사용하는 방법 (0) | 2024.01.23 |
---|---|
[React] axios 통신 중 mysql의 timestamp 타입 데이터 가져와서 한국 시간으로 변환하는 방법 (0) | 2024.01.08 |
[React] axios 요청할 때 http Method 별로 JWT 토큰을 headers에 넣어 보내는 방법 (0) | 2024.01.04 |
[React] 서버와 통신 중 jwt 토큰을 응답 받았을 때 사용하는 법, 만료 하는 법 (1) | 2024.01.03 |
[React] react-fontawesome 패키지 사용법 (0) | 2023.12.29 |