Skip to content

SsSseo/login-example

Repository files navigation

📁 (site) / components / AuthForm.tsx

  • 사용자 인증(로그인 및 회원가입)을 담당하는 컴포넌트
  • variant : 현재 폼이 로그인 폼인지, 회원가입 폼인지 판단

📁 (site) / page.tsx

  • useEffect 훅을 통해 컴포넌트가 마운트 될 때 sessionStorage에서 loginToken이라는 키를 가진 토큰을 가져온다.
  • 이 토큰을 사용해 사용자 정보를 요청한다.
  • 만약 사용자 정보 요청이 성공적으로 이루어지면 'about'페이지로 이동한다.
  • setTimeout을 이용하여 300ms뒤에 로딩상태를 false로 변경한다.
  • return에는 로딩 페이지가 구현되어있다.

📁 (site) / page.tsx

  • 사용자가 이미 로그인 되어 있는지 확인하고, 그에 다라 사용자에게 적절한 화면을 보여준다.

📁 about / page.tsx

  • about이라는 컴포넌트를 정의하고 있다.
  • 로그인 한 상태에서만 접근 가능하다. (useEffect에 기능 구현 되어 있음. sessionStorage의 loginToken 확인)
  • handleLogout : 로그아웃 처리 (sessionStorage에서 loginToken 삭제)
  • 로그인 상태인지 확인하고, 로그아웃 기능을 제공하며, 로그인 상태에 따라 적절한 화면을 보여준다.

📁 components / Button.tsx

  • 버튼 컴포넌트

📁 components / Input.tsx

  • 인풋 컴포넌트

📁 components / OAthButton.tsx

  • 소셜 로그인 버튼 컴포넌트

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors