React · library decision

폼 라이브러리 도입 판단

직접 만든 훅이 감당하기 어려운 복잡도가 보이면 React Hook Form이나 Formik 같은 도구를 검토합니다.

수십 개 필드

단순 객체 상태만으로 값과 오류를 추적하기 어려워집니다.

조건부 렌더링

선택값에 따라 필드가 생기거나 사라지는 흐름이 늘어납니다.

동적 필드 배열

전화번호, 주소처럼 항목 추가와 삭제가 필요합니다.

비동기 검증

서버 중복 확인이나 스키마 검증 결과를 함께 다룹니다.

렌더링 비용

입력마다 큰 폼 전체가 다시 렌더링되는 부담을 줄여야 합니다.

작게 시작

useReducer / useForm

필드 구조가 고정되어 있고 재사용 범위가 좁다면 직접 만든 추상화로 충분합니다.

성능 중심

React Hook Form

비제어 컴포넌트와 ref 기반 흐름으로 입력 중 불필요한 리렌더링을 줄입니다.

상태 명시

Formik

값, 오류, touched 상태를 명시적으로 관리하는 제어 컴포넌트 흐름에 잘 맞습니다.

선택 원칙

라이브러리는 폼 코드를 줄이기 위한 장식이 아니라, 검증과 성능, 동적 필드 관리가 제품 요구사항이 되었을 때 도입하는 운영 도구입니다.