2016-02-26 67 views
0

对于React,我很新,并且在理解组件的生命周期时遇到了一些麻烦。从其他组件的事件创建组件

我目前有一个navbar和navbutton组件,我希望每个navbutton触发不同的东西。我不想更改页面,我想在同一页面中显示更多的组件。

我有我的按钮设置,所以我可以做到以下。

<NavButton text="Searches" onClick={ 
    function() { 
     console.log('test'); 
    } 
} /> 
</div> 

是否有无论如何,我可以说,在我的DOM的其他地方创建/显示不同的组件?

回答

0

您可以:

  • 给您的组件的状态,并添加制成依赖于国家
一个showdetail标志(在 getInitialState()设置为false)
  • 点击更新状态(setState({showDetail: true})
  • 渲染

    渲染可能看起来像这样:

    render() { 
        return (
        <NavItem props={foo}> 
         {this.state.showDetail? <NavSubItem props={bar}/> : null } 
        </NavItem> 
    ) 
    } 
    

    这样,<NavSubItem>仅在showDetail == true时才呈现。