Reactjs 使制表符切换有条件

Reactjs 使制表符切换有条件,reactjs,antd,Reactjs,Antd,我有一个基本的标签界面,我想知道是否有一种方法,点击标签,检查一个条件。根据情况,我们是否继续更改选项卡 从可用的方法来看,我找不到任何对我有帮助的方法 onChange和onTabClick似乎对我想做的事情不起作用,有什么想法吗 谢谢 无论您关注什么元素,都可以使用onKeyDownprop。然后,只需检查要调用的条件preventDefault() 我不知道你的版本是否可行,但你可以这样做: (在示例中,我没有设置任何逻辑,但您可以在按钮中执行任何您想要的操作) 类应用程序扩展了React

我有一个基本的标签界面,我想知道是否有一种方法,点击标签,检查一个条件。根据情况,我们是否继续更改选项卡

从可用的方法来看,我找不到任何对我有帮助的方法

onChange和onTabClick似乎对我想做的事情不起作用,有什么想法吗


谢谢

无论您关注什么元素,都可以使用
onKeyDown
prop。然后,只需检查要调用的条件
preventDefault()


我不知道你的版本是否可行,但你可以这样做: (在示例中,我没有设置任何逻辑,但您可以在按钮中执行任何您想要的操作)

类应用程序扩展了React.Component{
状态={
活动键:“1”
};
handleChange=activeKey=>{
this.setState({activeKey});
};
render(){
返回(
当前antd版本:{version}

{ this.setState({activeKey:“2”}); }} > 转到第二个选项卡 { this.setState({activeKey:“1”}); }} > 返回到第一个选项卡 ); } }

谢谢,但我认为这并不能解决问题。作为您的参考,我谈论的是这个组件:
onKeyDown = (event) => {
  if (condition) event.preventDefault()
}
class App extends React.Component {
  state = {
    activeKey: "1"
  };

  handleChange = activeKey => {
    this.setState({ activeKey });
  };

  render() {
    return (
      <div className="App">
        <p>Current antd version: {version}</p>
        <div>
          <Tabs
            type="primary"
            onChange={this.handleChange}
            activeKey={this.state.activeKey}
          >
            <TabPane tab="First" key="1">
              <Button
                onClick={() => {
                  this.setState({ activeKey: "2" });
                }}
              >
                Go to Second Tab
              </Button>
            </TabPane>
            <TabPane tab="Second" key="2">
              <Button
                onClick={() => {
                  this.setState({ activeKey: "1" });
                }}
              >
                Back to first tab
              </Button>
            </TabPane>
          </Tabs>
        </div>
      </div>
    );
  }
}