我怎样才能通过道具打开崩溃的div?

时间:2016-11-16 03:08:26

标签: twitter-bootstrap reactjs redux

我有一个react-bootstrap折叠,应该在单击按钮时打开/关闭。我还想通过redux调度打开它,但为了简单起见,我传递了一个bool值的属性:

 <App opennow={true} />

这是我的Appcomponent中的render方法的一部分:

 render() {
    console.log('opennow', this.props.opennow)

    //this.state.open = this.props.opennow;
    console.log(this.state.open);
    return (
      <div>
        <Button onClick={ 
            ()=> 
      this.setState({ open: !this.state.open })
                        }>
          click
        </Button>
        <Collapse in={this.state.open}>
          <div>

如何保持现有的显示/隐藏功能并触发一个节目,即在这种情况下通过属性打开折叠this.props.opennow?这是Codepen

1 个答案:

答案 0 :(得分:2)

在班级中添加componentDidMount。它在生成DOM后运行代码。

 componentDidMount(){
     if(this.props.opennow){
       this.setState({open:true})
     }
  }

如果opennow prop被传递为true,它会检查条件并在状态中将open设置为true。

这是codepen