ModalAPI
React Modal 组件的 API 参考文档。了解此导出模块的 props、CSS 和其他 API。
演示
导入
import Modal from '@mui/material/Modal';
// or
import { Modal } from '@mui/material';
通过阅读关于最小化包大小的指南,了解它们之间的区别。
Modal 是一个较低级别的构造,以下组件利用了它
如果您要创建模态对话框,您可能需要使用 Dialog 组件,而不是直接使用 Modal。
此组件与 react-overlays 共享许多概念。
原生组件的 Props 也可用。
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
children* | element | - | 单个子内容元素。 |
open* | bool | - | 如果 |
BackdropComponent | elementType | styled(Backdrop, { name: 'MuiModal', slot: 'Backdrop', overridesResolver: (props, styles) => { return styles.backdrop; }, })({ zIndex: -1, }) | 一个幕布组件。此 prop 启用自定义幕布渲染。 |
BackdropProps | object | - | 应用于 |
classes | object | - | 覆盖或扩展应用于组件的样式。 有关更多详细信息,请参阅下面的 CSS 类 API。 |
closeAfterTransition | bool | false | 设置为 true 时,Modal 会等到嵌套的 Transition 完成后才关闭。 |
component | elementType | - | 用于根节点的组件。可以是用于 HTML 元素的字符串或组件。 |
components | { Backdrop?: elementType, Root?: elementType } | {} | 用于内部每个插槽的组件。 |
componentsProps | { backdrop?: func | object, root?: func | object } | {} | 插槽组件的额外 props。您可以覆盖现有 props 或添加新的 props。 |
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 | 始终将 children 保留在 DOM 中。此 prop 在 SEO 情况或当您想要最大化 Modal 的响应能力时很有用。 |
onClose | func | - | 当组件请求关闭时触发的回调。 签名: function(event: object, reason: string) => void
|
onTransitionEnter | func | - | 在过渡进入时调用的函数。 |
onTransitionExited | func | - | 在过渡退出后调用的函数。 |
slotProps | { backdrop?: func | object, root?: func | object } | {} | 用于 Modal 内部每个插槽的 props。 |
slots | { backdrop?: elementType, root?: elementType } | {} | 用于 Modal 内部每个插槽的组件。可以是用于 HTML 元素的字符串或组件。 |
sx | Array<func | object | bool> | func | object | - | 允许定义系统覆盖以及其他 CSS 样式的系统 prop。 有关更多详细信息,请参阅 `sx` 页面。 |
ref
被转发到根元素。插槽名称 | 类名 | 默认组件 | 描述 |
---|---|---|---|
root | .MuiModal-root | 'div' | 渲染根的组件。 |
backdrop | .MuiModal-backdrop | 渲染幕布的组件。 |
这些类名对于使用 CSS 进行样式设置很有用。当触发特定状态时,它们会应用于组件的插槽。
类名 | 规则名称 | 描述 |
---|
您可以使用以下自定义选项之一覆盖组件的样式
- 使用 全局类名。
- 使用作为自定义主题中组件的
styleOverrides
属性一部分的规则名称。
源代码
如果您在此页面中找不到信息,请考虑查看 组件的实现 以获取更多详细信息。