합성 컴포넌트 도입을 통한 UI 컴포넌트 아키텍처 개선
0. 기존 방식의 문제점
Props 폭발(Props Explosion)
// 합성 컴포넌트를 사용하지 않은 예시
<Modal
title="크루원 초대"
content={<MemberInviteForm formMethods={formMethods} />}
showOverlay={true}
overlayClickHandler={handleClose}
leftButtonText="닫기"
leftButtonAction={handleClose}
rightButtonText="초대"
rightButtonAction={handleSubmit}
/>가독성 저하
1. 합성 컴포넌트를 사용하는 이유
관심사의 분리
선언적 사용
구성 가능성
2. 기본 합성 컴포넌트
의문점
3. 심화된 합성 컴포넌트: Children API 활용
특정 타입의 컴포넌트만 필터링하는 유틸리티 함수
자동으로 레이아웃을 구성하는 상위 컴포넌트
사용 코드
확장성 문제
결론 및 느낀점
Last updated