Form State

폼 상태 원천 선택

제어 컴포넌트는 React state가 값을 갖고, 비제어 컴포넌트는 DOM과 ref가 값을 보관한다.

데이터 흐름 비교

폼 설계

제어 컴포넌트

입력 변화가 상태 업데이트로 흐르므로 실시간 검증과 포매팅에 강하다.

비제어 컴포넌트

폼 제출 시 ref로 값을 읽어 제출 시점 검증이나 외부 라이브러리 연동에 맞다.

폼 상태 원천 선택

입력 중 피드백이 필요하면 제어, 단순 제출이면 비제어도 검토한다.

입력 이벤트상태/DOM 저장검증제출
입력 검증 해석

복잡한 폼일수록 값의 소유자를 React state로 모아야 디버깅과 검증 흐름이 선명해진다.