조합과 상태 관리

MBSW 컴포넌트에 앱의 상태와 데이터를 연결합니다.

Controlled state

상태를 다른 UI와 공유하거나 저장하려면 value, checked, open과 그에 대응하는 콜백을 사용합니다. 컴포넌트 내부에서 상태를 관리하게 하려면 지원되는 defaultValue, defaultChecked, defaultOpen으로 초기값을 지정합니다. 사용할 수 있는 속성은 각 컴포넌트의 API에서 확인합니다.

InlineEdit은 편집 중인 값과 확정한 값을 구분합니다. onValueChange는 편집 중인 값을 알리는 콜백이고, onCommit은 확정한 값을 전달합니다. Esc 취소 시 이전 값으로 돌아가야 한다면 value를 onCommit에서 갱신합니다.

Slots and portals

Dialog, Select, DropdownMenu는 최상위 컴포넌트 안에서 Trigger와 Content를 함께 구성합니다. Content의 포털이나 항목의 선택 표시자처럼 내부에서 만들어지는 요소를 중복해서 추가하지 않습니다.

asChild는 이 속성을 지원하는 컴포넌트에만 사용합니다. 하나의 자식 요소를 전달하고, 자식 컴포넌트가 전달받은 속성, 이벤트, ref를 실제 DOM 요소로 연결하도록 합니다. 지원 여부는 각 컴포넌트의 API에서 확인합니다.

Application behavior

BoardCard는 드래그 UI 상태를, MediaSlot은 파일 상태를 표현합니다. 실제 드래그 이동, 업로드, 권한 검사, 오류 복구는 앱에서 구현합니다. 코드 예제는 동작 연결 위치를 보여주며 제품 백엔드를 포함하지 않습니다.