Modal
현재 작업에 집중하도록 별도의 대화상자를 표시합니다.
사용 가이드
#현재 작업을 잠시 멈추고 확인이나 제한된 입력을 완료해야 할 때 사용합니다. 짧은 확인은 Popconfirm, 병행 작업은 Modeless가 알맞습니다.
결정에 필요한 내용 구성
header·body·footer슬롯을 나누고okText·cancelText로 동작을 구체적으로 표현하세요.hideFooter로 기본 하단을 숨길 수 있습니다.대화상자 열고 닫기
setOpen()으로 열고setOk()·setCancel()·setClose()로 종료할 수 있습니다.종료 이유에 맞춰 처리
closed.detail.event의ok·cancel·close와value를 읽으세요.
예제
#기능별 예제
#22개 주제에서 필요한 기능을 선택하세요. 속성 설정, 메서드 호출, 이벤트 결과와 슬롯 구성을 실행 화면과 코드로 확인할 수 있습니다.
일치하는 기능이 없습니다.
API reference
#이름에 마우스를 올리거나 키보드로 선택하면 적용 코드를 확인할 수 있습니다. 터치 화면에서는 이름을 누르세요.
<sy-modal>
Properties
| Attribute / Property | Type | Default | Description |
|---|---|---|---|
string | '' | 취소 버튼 문구입니다. | |
boolean | false | 닫기 버튼을 표시합니다. | |
boolean | false | 대화상자 최대화 동작을 허용합니다. | |
boolean | false | 기본 하단 동작 영역을 숨깁니다. | |
boolean | false | 배경 클릭으로 닫습니다. | |
boolean | false | 배경 마스크를 생략합니다. | |
string | '' | 확인 버튼 문구입니다. | |
boolean | false | 하위 메뉴가 펼쳐진 상태입니다. | |
number | 0 | 대화상자 너비(px)입니다. 0은 기본 크기입니다. | |
number | 0 | 대화상자 높이(px)입니다. 0은 내용에 맞춥니다. | |
string | '-1' | 화면 위쪽 위치입니다. -1은 자동 가운데 정렬입니다. | |
string | '-1' | 화면 왼쪽 위치입니다. -1은 자동 가운데 정렬입니다. | |
'modal' | 'dialog' | 'dialog' | modal 또는 dialog 스타일입니다. | |
| 'none'
| 'fade' | 'fade-scale' | 'zoom' | 'pop'
| 'slide-top' | 'slide-bottom' | 'slide-left' | 'slide-right'
| 'slide-fade-top' | 'slide-fade-bottom' | 'slide-fade-left' | 'slide-fade-right'
| 'reveal-top' | 'reveal-bottom' | 'reveal-left' | 'reveal-right'
| 'flip-x' | 'flip-y' | 'bounce' | 'spin' | 'none' | Enter/exit animation type. `none` (default) toggles instantly. Direction-aware values are explicit (`slide-top`, `slide-fade-left`, `reveal-bottom`, …) because the modal has no `position` attribute to derive direction from. Direction-less values (`fade`, `pop`, `flip-*`, `bounce`, `spin`) play the same regardless of orientation. | |
'x-fast' | 'fast' | 'medium' | 'slow' | 'x-slow' | 'fast' | Animation playback speed token. Maps to `--transition-*` global tokens. |
Events
| Event | Detail | Description |
|---|---|---|
CustomEvent<{
event: 'ok' | 'cancel' | 'close';
value: any;
maximized: boolean;
position: { top: string; left: string };
}> | Fires when the modal closes. `detail.event` distinguishes ok / cancel / close. |
Methods
| Method | Returns | Description |
|---|---|---|
Promise<void> | 하위 메뉴를 펼칩니다. | |
Promise<void> | 항목을 닫습니다. | |
Promise<void> | 취소 결과와 함께 대화상자를 닫습니다. | |
Promise<void> | 확인 결과와 함께 대화상자를 닫습니다. | |
Promise<void> | 창을 최대화합니다. |
Slots
| Slot | Description |
|---|---|
| header 영역에 표시할 내용입니다. | |
| body 영역에 표시할 내용입니다. | |
| footer 영역에 표시할 내용입니다. |