Material-ui: [Dialog] onRequestClose 似乎没有被解雇 - 我做错了什么?

创建于 2015-12-06  ·  3评论  ·  资料来源: mui-org/material-ui

我正在使用 ReactJS 和 Material-Ui 进行测试。 对于一个小的测试组件,我正在使用 Dialog。 我正在使用与您的示例相同的代码,但这似乎不起作用。 也许有一个错误或者文档对我来说不够清楚。

这是代码

const {Dialog, FlatButton} = MUI;

Home = React.createClass({
  getInitialState() {
    return {
      welcomeModal: false
    };
  },
  openWelcomeDialog() {
    this.setState({welcomeModal:true});
  },
  closeWelcomeDialog(buttonClicked) {
    console.log('Close The Welcome Dialog.');
    this.setState({welcomeModal:false});
  },
  render() {
    let modalActions = [
      { text: 'Cancel' }
    ];
    return (
      <div>
        <h1>Welcome to my app</h1>
        <a href="#" onClick={this.openWelcomeDialog}>Open the Welcome Modal</a>
        <Dialog
          title="Welcome Modal"
          actions={modalActions}
          autoDetectWindowHeight={true}
          autoScrollBodyContent={true}
          open={this.state.welcomeModal}
          onRequestClose={this.closeWelcomeDialog}>
        <div style={{height: '1000px'}}>
          Really long content
        </div>
        </Dialog>
      </div>
    );
  }
});

怎么了:

当我点击链接时,事件将被触发,模态以正确的方式打开。 但是:如果在后台或取消按钮上单击什么并不重要:模态不会关闭,也不会触发 console.log ......所以:不会调用该方法! 在我的例子中,关闭模态是不可能的。

最有用的评论

我有同样的问题,我正在使用injectTapEventPlugin() 。 与事件相关的一切似乎都在起作用。 我应该检查其他东西吗?

问题与开头主题中的问题几乎相同,无论我单击何处 - 它都不会被触发。

所有3条评论

首先,你打电话给injectTapEventPlugin()吗?

哦.. 'rly? 现在它起作用了。 我试图找到问题有一段时间了......

所以答案是:不,我没有打电话给它。 在 Material-Ui 文档中没有看到这个引用。 谢谢@oliviertassinari

我有同样的问题,我正在使用injectTapEventPlugin() 。 与事件相关的一切似乎都在起作用。 我应该检查其他东西吗?

问题与开头主题中的问题几乎相同,无论我单击何处 - 它都不会被触发。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

rbozan picture rbozan  ·  3评论

anthony-dandrea picture anthony-dandrea  ·  3评论

finaiized picture finaiized  ·  3评论

activatedgeek picture activatedgeek  ·  3评论

ryanflorence picture ryanflorence  ·  3评论