即使未选择react-tabs组件也可以更改状态

时间:2019-05-29 20:47:30

标签: javascript reactjs

我正在使用反应标签。

state = {
    tabIndex: 0
};

...

    <Tabs
                selectedIndex={variable ? variable : tabIndex}
                onSelect={index => this.setState({ tabIndex: index })}
              >

如果未传递变量,则页面在选项卡0中打开。但是有时我想在特定选项卡中打开,因此我传递了variable = 1。但是我还想更新tabIndex,该怎么办?

2 个答案:

答案 0 :(得分:0)

tabIndex处于组件状态,由您onSelect进行更新。

答案 1 :(得分:0)

您可以使用传递的道具(在此示例中为 state )(如果传递)来初始化variable

constructor(props) {
  super(props);
  const {
    variable = 0
  } = this.props;

  this.state = {
    tabIndex: variable
  };
}

并继续使用它

<Tabs
    selectedIndex={tabIndex}
    onSelect={index => this.setState({ tabIndex: index })}
>