handleChange = (e,value) => {this.setState({ value }) }

class SimpleTabs extends React.Component {
  state = {
    value: 0,
  };

  handleChange = (event, value) => {
    this.setState({ value });
  };

  render() {
    const { classes } = this.props;
    const { value } = this.state;

    return (
      <div className={classes.root}>
        <AppBar position="static">
          <Tabs value={value} onChange={this.handleChange}>
            <Tab value=0 label="Item One" />
            <Tab value=1  label="Item Two" />
            <Tab value=2  label="Item Three" />
          </Tabs>
        </AppBar>
        {value === 0 && <TabContainer>Item One</TabContainer>}
        {value === 1 && <TabContainer>Item Two</TabContainer>}
        {value === 2 && <TabContainer>Item Three</TabContainer>}
      </div>
    );
  }
}

想知道这个handleChange函数是怎样实现切换导航栏的功能的,我不是很懂函数的这两个参数,为什么这两个参数写在一起value就是点击后的值,不写event就始终是0

阅读 3.3k
1 个回答

Tabs组件抛出onChange事件默认参数为event,value,
你如果handleChange 方法接受参数时,只写一个参数,则只会接受到第一个参数event,取不到value值

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题