유튜브블로그Top 10
내 프로필

데브허브 안내
소개업데이트 소식

데브허브 커뮤니티

Two-Way From Binding - React Coding Interview Question

TechPrep

2025. 7. 15.

0

#frontend
  • React의 양방향 폼 바인딩(Two-Way Form Binding)은 고전적인 코딩 인터뷰 질문으로, 입력 요소와 텍스트 디스플레이를 로컬 React 상태를 통해 완벽하게 동기화하는 방법을 다룹니다. 🔄
  • 요구 사항은 빈 문자열로 시작하고, 모든 키 입력이 즉시 data-test-id="echo-display"를 가진 P 태그에 나타나야 하며, 입력은 반드시 '제어(controlled)'되어야 합니다. 📝
  • 초기 상태에서는 입력 필드에 텍스트가 나타나지만, 아래 P 태그에는 반영되지 않아 '제어되지 않는(uncontrolled)' 컴포넌트의 한계를 보여줍니다. 🚫
  • 해결책은 useState 훅을 사용하여 입력 필드의 현재 값을 저장할 상태 변수(text)와 이를 업데이트할 함수(setText)를 선언하고, 초기값을 빈 문자열로 설정하는 것입니다. 💡
  • <input> 요소의 value 속성을 text 상태 변수에 바인딩하고, onChange 이벤트 핸들러를 추가하여 e.target.valuesetText 함수를 호출함으로써 입력 필드를 '제어(controlled)' 컴포넌트로 만듭니다. ⌨️
  • P 태그(data-test-id="echo-display") 내부에 text 상태 변수를 직접 렌더링하여, 입력 필드의 변경 사항이 실시간으로 디스플레이에 반영되도록 합니다. 📺
  • 이 문제는 React의 상태 관리, 폼 바인딩의 기본 원리, 그리고 제어되는(controlled) 컴포넌트와 제어되지 않는(uncontrolled) 컴포넌트의 차이점을 이해하는 데 중요합니다. ✅

Recommanded Videos