Form 컴포넌트 구현하기 (+ shadcn/ui)
react-hook-form과 shandcn/ui를 사용해 form 컴포넌트 구현하기
로그인 페이지를 구현한다고 가정해보자.

구현해야 할 기능
이메일, 패스워드 입력 👉🏻 input, form 컴포넌트로 구현, 유효성 검사
로그인 버튼 👉🏻 입력한 이메일과 패스워드를 서버에 전달 후 결과값 렌더링
회원가입 버튼 👉🏻 회원가입 페이지로 이동
React Hook Form - shadcn/ui
Form의 기본적인 구조는 다음과 같다.
Form
FormField
FormItem
FormLabel
FormControl
FormDescription
FormMessage
formSchema 만들기
useform을 이용해 form 정의하기
form 컴포넌트 작성하기
라우터 이동 핸들러 함수
이메일 input에 값이 없다면 👉🏻 localhost:3000/register?email=&redirect_uri=undefined
이메일 input에 값이 있다면 👉🏻 localhost:3000/register?email=bienprltd@gmail.com&redirect_uri=undefined
회원정보가 없거나, 일치하지 않는 경우
회원정보가 없는 경우
onSubmit 함수 안에서 확인할 수 있다. 회원정보가 없는 경우, 아래 조건문에 걸리게 된다.
shadcn/ui의 alertDialog 컴포넌트를 이용해 결과를 보여준다.
이메일, 패스워드가 일치하지 않는 경우
Last updated