학습 공간 개념 · 판단 · 실험

Fanta Lab

질문 82 · 실전 면접 답변

자식 컴포넌트는 부모에게 변경 의도를 어떻게 전달하나요?

이렇게 답해 보세요 (핵심 답변)

React는 위에서 아래로 흐르는 단방향 데이터 흐름을 따르므로, 부모가 상태 변경 함수를 콜백 props로 내려주고 자식이 사용자 이벤트 시점에 그 콜백을 호출해 변경 의도를 전달합니다. 부모는 자식으로부터 전달받은 값이나 도메인 이벤트를 확인해 자신이 소유한 state를 갱신하고, 그 결과로 새로운 props가 다시 자식에게 내려갑니다. 형제 컴포넌트끼리 상태를 맞춰야 할 때도 공통 부모에 상태를 두고 각각 값과 콜백을 내려주는 방식으로 해결합니다.

함께 설명하면 좋은 이유 (꼬리질문 대비)

  1. 데이터 소유권을 부모 한 곳에 유지하면서도 자식의 입력 이벤트를 안전하게 상위로 반영할 수 있습니다.
  2. 콜백 시그니처를 구체적인 DOM 이벤트 객체 대신 도메인 의미가 담긴 값으로 설계하면 부모와 자식 간 결합도를 낮출 수 있습니다.

면접에서 자주 하는 실수

자식 컴포넌트에서 부모가 내려준 배열이나 객체 props를 직접 수정(mutation)해 부모 상태를 바꾸려 하면 리렌더링이 누락되고 데이터 흐름 추적이 깨집니다.

원리와 예제까지 읽기

공식 참고 자료

질문 목록 출처 ↗ · 원본 82번을 바탕으로 질문과 답변을 새로 정리했습니다.

← React