使用包装但模态不打开

时间:2017-04-24 13:12:07

标签: javascript reactjs material-ui

import React, { PropTypes } from 'react';
import Dialog from 'material-ui/Dialog';

    export default class simpleModal extends React.Component {

        constructor(props){
          super(props)
        }

        handlePrimaryButton = () => {
          this.props.router.push('/some/path');
        }

        render(){
          return(
              <Dialog
                actions={<RaisedButton
                  label="OK"
                  primary={true}
                  onTouchTap={this.handlePrimaryButton}
                />}
                modal={false}
                open={this.props.open}
              >
                {this.props.msg}
              </Dialog>
          )
        }
    }

我使用material-ui Dialog组件创建了一个包装器但我无法打开它。在另一个组件中,我在我的渲染方法中有这个:

<simpleModal open={this.state.openSimpleModal} />

然后我使用openSimpleModal

更改this.setState({openSimpleModal: true})的状态

我没有看到模态是开放的。我的上述代码中是否有任何遗漏?我设法直接使用material-ui的Dialog组件,但不使用包装器。

注意:Chrome控制台完全没有错误。

1 个答案:

答案 0 :(得分:0)

旧线程,但在使用包装器时遇到了同样的问题。不得不使用父母的回调,而不是漂亮。

material-ui-next中的Dialog组件不再出现此问题。