首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MUI v5 disableBackdropClick in createTheme等效项

MUI v5 disableBackdropClick in createTheme等效项
EN

Stack Overflow用户
提问于 2021-11-16 15:07:06
回答 1查看 127关注 0票数 1

在MUI v4中,您可以通过在createMuiTheme中执行此操作来全局禁用模态或对话框的背景单击

代码语言:javascript
复制
props: {
  MuiDialog: {
    disableBackdropClick: true,
  },
},

V5中删除了disableBackdropClick;有没有全局禁用背景点击的替代方案?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-16 16:04:45

migration guide建议覆盖关闭处理程序,并根据关闭原因决定是否可以关闭Dialog

代码语言:javascript
复制
<Modal
  onClose={(event, reason) => {
    if (reason !== 'backdropClick') {
      handleClose(event, reason);
    }
  }}

但是如果你想在createTheme中全局disableBackdropClick,你需要在两个地方禁用click事件:在Dialogroot componentBackdrop component中,以防止onClose回调被调用:

代码语言:javascript
复制
createTheme({
  components: {
    MuiDialog: {
      defaultProps: {
        onClick: (e) => e.stopPropagation(),
        BackdropProps: {
          sx: {
            pointerEvents: 'none',
          },
        },
      },
    },
  },
});

实时演示

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69991556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档