[英]React-Bootstrap Tabs defaultActiveKey is not changing with stateChange
<Tabs>
不会随着 State 更改而更改defaultActiveKey 。
我的代码是这样的
this.state = {
defaultTab: "write"
}
functionToChangeDefaultTab()=>{
this.setState({defaultTab: "read"})
}
render(){
return(
<Tabs defaultactivekey={this.state.defaultTab} transition={false} onSelect={this.onTabSelected}>
<Tab eventKey="read" title="read"></Tab>
<Tab eventKey="write" title="write"></Tab>
.
.
</Tabs>
);
}
即使在运行 Function 以将状态 defaultTab 设置为“读取”值之后,“写入”选项卡也会打开。 我不知道,如何动态放置 defaultActiveTab。
看来你的问题来自
class NAMEOFYOURCOMPONENT extends React.Component {
/* - This syntax ensures `this` is bound within functionToChangeDefaultTab.
- Warning: this is *experimental* syntax.
( from react's doc see: https://reactjs.org/docs/handling-events.html)
- you wrote: ❌ functionToChangeDefaultTab()=>{ ... } */
// ✅ should be
functionToChangeDefaultTab = () => {
// ... code ...
}
render() {
return (
{/* ... code ... */}
);
}
}
然后它应该工作。
为什么你不使用 activeKey 道具并传递你的 state
<Tabs
activeKey={activeTab}
id="uncontrolled-tab-example"
onSelect={(k) => {
setactiveTab(k || '');
nevagitation({
search: `?tab=${k}`,
});
}}
className="bluebordertabs"
>
//other code
</Tabs>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.