Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

ksw_devlog

TIL 01.25 본문

TIL

TIL 01.25

kimcoach 2023. 1. 25. 19:58

React Hook Form

  • react-hook-form

https://www.react-hook-form.com/

 

Home

React hook for form validation without the hassle

www.react-hook-form.com

 

React에서 기존 사용자입력값을 관리하려면, useRef나 useState를 이용해야했지만, React Hook Form을 이용하면 간단하게 처리할 수 있다. 아래는 공식홈에 있는 예제코드이다.

예제코드
import React from "react";
import { useForm } from "react-hook-form";

const Example = () => {
  const { handleSubmit, register, formState: { errors } } = useForm();
  const onSubmit = values => console.log(values);

  return (
    <form onSubmit={handleSubmit(onSubmit)}>
      <input
        type="email"
        {...register("email", {
          required: "Required",
          pattern: {
            value: /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,}$/i,
            message: "invalid email address"
          }
        })}
      />
      {errors.email && errors.email.message}

      <input
        {...register("username", {
          validate: value => value !== "admin" || "Nice try!"
        })}
      />
      {errors.username && errors.username.message}

      <button type="submit">Submit</button>
    </form>
  );
};

 

 

장점
  • 배우기 쉽다
  • HTML 표준을 활용하여 안정적인 기능을 제공한다.
  • 종속성이 없어 크기가 작다
  • 재렌더링 횟수를 최소화한다.
  • 유효성 검사에 유용하다.

 

렌더링 횟수 최소화
  • 구성 요소를 즉각 분리하여 같은 컴포넌트 내 요소들의 의미없는 재 렌더링을 막아준다.
  • 전체 양식을 재 렌더링하지 않고, 개별 입력 및 양식 상태 업데이트를 구독할 수 있다.

 

API

useForm

React Hook Form에서 가장 주가 되는 요소이며, 폼을 쉽게 관리하기 위한 커스텀훅이다.

  • input 또는 select의 값들을 관리할 수 있다.
  • defaultValues 나 defaultChecked를 통해 초기값을 설정할 수 있다.
  • 값을 초기화하려면 useForm의 reset api를 이용할 수 있다.
  • HTML표준기반으로 된 검증규칙을 적용할 수 있다.
  • 언제 검증을 할 것인지에 관한 트리거를 선택할 수 있다.
  • formState api를 이용하여 값이 오염되지는 않았는지 (isDirty), 폼이 정상적으로 송신되었는지 (isSubmitSuccessful) 같은 폼의 상태를 즉각적으로 알 수 있다.

https://www.react-hook-form.com/api/useform

 

useForm

Performant, flexible and extensible forms with easy-to-use validation.

www.react-hook-form.com

 

 

출처 : https://cheri.tistory.com/262

 

React Hook Form 간단정리

https://www.react-hook-form.com/ Home React hook for form validation without the hassle www.react-hook-form.com React에서 기존 사용자입력값을 관리하려면, useRef나 useState를 이용해야했지만, React Hook Form을 이용하면 간단하

cheri.tistory.com

 

'TIL' 카테고리의 다른 글

TIL 01.27  (0) 2023.01.29
TIL 01.26  (0) 2023.01.26
WIL 12주차  (0) 2023.01.24
TIL 12주 5일차 - Type script  (0) 2023.01.24
TIL 12주 4일차- Type script  (0) 2023.01.19