javascript - Material ui onClose 作为 disableBackdropClick 的替代品

标签 javascript reactjs material-ui modal-dialog

目前我有一个对话框

  <Dialog
    open={open}
    data-testid="myTestDialog"
    disableEscapeKeyDown={true}
    disableBackdropClick={true}
  >

来自文档 https://material-ui.com/api/dialog/ disableBackdropClick 已贬值,应该改用 onClose 但我如何修改上面的代码以使其使用新的 onClose 工作,我不熟悉此功能/签名

最佳答案

要使用 onClose,您的变量 open 需要可设置。当 open 为 true 时,将显示对话框,当调用 onClose 时,它​​会将 open 设置为 false,但仅当它因背景点击或 escape 按下而未关闭时才如此。open p>

例如

<Dialog
    open={open}
    data-testid="myTestDialog"
    onClose={(event, reason) => {
        if(reason !== 'backdropClick' && reason !== 'escapeKeyDown') {
            // Set 'open' to false, however you would do that with your particular code.
            setOpen(false);
        }
    }
>

关于javascript - Material ui onClose 作为 disableBackdropClick 的替代品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69179123/

相关文章:

javascript - HTML <source> 标签上的 Webpack JSX 错误

javascript - WordPress 将 javascript 添加到 native WordPress 帖子/页面编辑器

reactjs - material-ui 按钮事件样式

javascript - 如何在React Material-UI自动完成中实现最小字符长度功能

reactjs - 在 Material UI 中使用 z-index

javascript - Gulp 错误 - 错误 : Cannot find module 'sigmund'

javascript - 上面有很多空间的 SVG 格式

javascript - 单击子元素会给 onclick 事件reactjs 带来未定义

javascript - React setState 更新值但未显示在 UI 中

javascript - 在 render() 中显示 featch json 数据时 React Native 出错