模态框
Modal 组件允许您创建对话框、弹出框、灯箱和其他强制用户在继续操作之前采取措施的元素。
Modal API
导入
import { Modal } from '@mui/base/Modal';
// or
import { Modal } from '@mui/base';
通过阅读这篇关于最小化捆绑包大小的指南,了解两者之间的区别。
原生组件的 Props 也可用。
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
children* | element | - | 单个子内容元素。 |
open* | bool | - | 如果 |
closeAfterTransition | bool | false | 当设置为 true 时,Modal 会等待嵌套的 Transition 完成后再关闭。 |
container | HTML 元素 | func | - | 一个 HTML 元素或返回 HTML 元素的函数。 |
disableAutoFocus | bool | false | 如果 |
disableEnforceFocus | bool | false | 如果 |
disableEscapeKeyDown | bool | false | 如果 |
disablePortal | bool | false |
|
disableRestoreFocus | bool | false | 如果 |
disableScrollLock | bool | false | 禁用滚动锁定行为。 |
hideBackdrop | bool | false | 如果 |
keepMounted | bool | false | 始终将子元素保留在 DOM 中。此 prop 在 SEO 情况或您希望最大化 Modal 响应能力时很有用。 |
onBackdropClick | func | - | 当背景幕布被点击时触发的回调。 |
onClose | func | - | 当组件请求关闭时触发的回调。 签名: function(event: object, reason: string) => void
|
onTransitionEnter | func | - | 过渡效果进入时调用的函数。 |
onTransitionExited | func | - | 过渡效果退出后调用的函数。 |
slotProps | { backdrop?: func | object, root?: func | object } | {} | 用于 Modal 内部每个 slot 的 props。 |
slots | { backdrop?: elementType, root?: elementType } | {} | 用于 Modal 内部每个 slot 的组件。可以是用于 HTML 元素的字符串或组件。 请参阅下面的 Slots API 了解更多详情。 |
ref
被转发到根元素。要了解如何自定义 slot,请查看覆盖组件结构指南。
Slot 名称 | 类名 | 默认组件 | 描述 |
---|---|---|---|
root | .base-Modal-root | 'div' | 渲染根元素的组件。 |
backdrop | .base-Modal-backdrop | 渲染背景幕布的组件。 |
这些类名对于使用 CSS 进行样式设置非常有用。当特定状态被触发时,它们会被应用到组件的 slots 上。
类名 | 描述 |
---|