Javascript 受控状态设置为false后,物料UI Snackbar不会关闭

Javascript 受控状态设置为false后,物料UI Snackbar不会关闭,javascript,reactjs,material-ui,Javascript,Reactjs,Material Ui,我有一个Snackbar组件,它通过检查redux状态来控制。onRequestClose()试图禁用clickaway关闭功能。我遇到的问题是,当propsnackbar warningopen第一次设置为false时,snackbar不会消失 下面是我的代码以及如何调用Snackbar组件。snackbarWarningOpen是一个布尔变量,它作为一个道具出现,可以正确地从true切换到false <Snackbar open={snackbarWarningOpen}

我有一个Snackbar组件,它通过检查redux状态来控制。
onRequestClose()
试图禁用clickaway关闭功能。我遇到的问题是,当prop
snackbar warningopen
第一次设置为
false
时,snackbar不会消失

下面是我的代码以及如何调用Snackbar组件。
snackbarWarningOpen
是一个布尔变量,它作为一个道具出现,可以正确地从true切换到false

<Snackbar
      open={snackbarWarningOpen}
      message={
        <span>
          <i className="fa fa-exclamation-triangle ble-warning" aria-hidden="true" />
          <span> {snackbarWarningMessage}</span>
        </span>
      }
      style={styles.warningSnackbar}
      bodyStyle={styles.warningSnackbarBody}
      onRequestClose={(reason) => {
        if (reason === 'clickaway') {
          return;
        }
      }}
    />

这个问题已经存在一年多了,并且没有指定Material UI的版本,但是无论谁遇到这个问题:现在可以在Material UI的v1.x版本中轻松解决:

scnackBar组件有一个
自动隐藏
道具,可设置该道具以实现您所需的功能:

<Snackbar
    open={this.state.open}
    onClose={this.handleClose}
    autoHideDuration={6000}
/>

不过,“单击退出时退出”仍将处于活动状态


请务必查看更新的信息。

我对您粘贴的代码有点困惑
open={snackbarWarningOpen}
,但您在自己的状态下设置了
open
。我知道这两个代码片段来自同一个组件,对吗?另外,我不知道你为什么不使用
autoHideDuration
Snackbar道具,在那里你可以设置超时?啊,我需要澄清的一点很好。底部的代码段来自Material UI源代码,而不是我的代码。我加上它是因为这似乎是我的问题的根源,但我不确定。我将编辑澄清。
<Snackbar
    open={this.state.open}
    onClose={this.handleClose}
    autoHideDuration={6000}
/>