【发布时间】:2017-04-04 18:06:55
【问题描述】:
我已经使用 React-Bootstrap 在我的 React 应用程序中实现了导航选项卡。
像这样:
<Tabs defaultActiveKey={1}>
<Tab eventKey={1} title="Log in">
{/* Irrelevant code */}
</Tab>
<Tab eventKey={2} title="Sign up">
{/* Irrelevant code */}
</Tab>
</Tabs>
现在在更改标签时,我想调用以下函数:
changeTab(login) {
if (login)
this.setState({ heading: "Log in" })
else
this.setState({ heading: "Sign up" })
}
其中login是一个true for Log in 987654325 false 987654326 @选择@ 987654327选项卡时。 p>
我该怎么做?
编辑:
我发现您可以在单击选项卡时调用一个函数,如下所示:
<Tabs defaultActiveKey={1} onClick={()=>this.changeTab()}>
<Tab eventKey={1} title="Log in">
{/* Irrelevant code */}
</Tab>
<Tab eventKey={1} title="Sign up">
{/* Irrelevant code */}
</Tab>
</Tabs>
但是我怎么知道点击了哪个标签呢?我需要它来根据单击的选项卡更改状态。
【问题讨论】:
-
您是否尝试过在 Tab 上定义
onClick事件,如下所示:<Tab eventKey={1} title="Log in" onClick={()=>this.changeTab()}> -
是的,我做到了,但没用,所以我现在在这里问。
-
哦,它确实是这样工作的,必须做一些修修补补,但确实奏效了。谢谢。
-
没关系,当您将它放在
Tabs组件上时它会起作用,但是我如何判断选择了哪个选项卡?
标签: reactjs tabs react-bootstrap