Modal
Display popup content that requires attention or provides additional information. If you just need to prompt for a text message, try component Toast.
The Modal contain an additional Hooks, see subsection useModal for details.
Basic
Use visible
control whether Modal
is displayed.
With useModal
Use hooks
for easier control Modal
.
Without Actions
Hide all action buttons.
Disable Action
Disable one of the buttons.
Customizable
Custom width
or className
.
Loading
Overlong
Whether it is desktop or mobile, the content beyond the scope has been well handled.
APIs
Modal.Props
Attribute | Description | Type | Accepted values | Default |
---|---|---|---|---|
visible | open or close | boolean | - | false |
onClose | open event | () => void | - | - |
onContentClick | event from modal content | (e: MouseEvent) => void | - | - |
wrapClassName | className of the modal dialog | string | - | - |
keyboard | press Esc to close modal | boolean | - | true |
disableBackdropClick | click background and don't close | boolean | - | false |
... | native props | HTMLAttributes | 'autoFocus', 'name', 'className', ... | - |
Modal.Title.Props
Attribute | Description | Type | Accepted values | Default |
---|---|---|---|---|
... | native props | HTMLAttributes | 'id', 'className', ... | - |
Modal.Subtitle.Props
Attribute | Description | Type | Accepted values | Default |
---|---|---|---|---|
... | native props | HTMLAttributes | 'id', 'className', ... | - |
Modal.Content.Props
Attribute | Description | Type | Accepted values | Default |
---|---|---|---|---|
... | native props | HTMLAttributes | 'id', 'className', ... | - |
Modal.Action.Props
Attribute | Description | Type | Accepted values | Default |
---|---|---|---|---|
passive | display passive mode | boolean | - | false |
disabled | disable current action | boolean | - | false |
onClick | click handler | (e: ModalActionEvent) => void | - | - |
loading | show loading | boolean | - | false |
... | native props | ButtonHTMLAttributes | 'id', 'className', ... | - |
useModal
type useModal = (initialVisible: boolean) => {
visible: boolean
setVisible: Dispatch<SetStateAction<boolean>>
currentRef: MutableRefObject<boolean>
bindings: {
visible: boolean
onClose: () => void
}
}
ModalActionEvent
type ModalActionEvent = MouseEvent<HTMLButtonElement> & {
close: () => void
}
Contributors