【发布时间】:2018-01-11 05:19:15
【问题描述】:
我从学习 React JS 开始,一直坚持将参数(例如按钮 id 或 Tab 值等)传递给 Tab onClick 事件。我得到的结果从“未定义”(将属性名称作为参数传递时)不等。 注意:Tag 是 material-ui 库的一个组件。
constructor(props){
super(props);
this.state = { value : 'a'};
this.handleChange = this.handleChange.bind(this);
}
handleChange(event){
console.log(event.target.value); //it prints undefined
this.setState({value: event.target.value});
}
<Tabs value={this.state.value}>
<Tab label="Tab A" value="a" onClick={this.handleChange}>
<div>
<h2>Controllable Tab A</h2>
<p>TAB A
</p>
</div>
</Tab>
<Tab label="Tab B" value="b" onClick={this.handleChange}>
<div>
<h2>Controllable Tab B</h2>
<p>TAB B</p>
</div>
</Tab>
</Tabs>
我尝试创建一个选项卡菜单,但我无法将 Tab 的值传递给 handleChange 函数。我的目标是,如果用户单击选项卡 A,this.state 的值应更新为“a”,否则该值应为“b”。
我该怎么做?
谢谢。
【问题讨论】:
-
对不起。 **Tab 是 material-ui 库的一个组件。
-
onClick={() => this.handleChange('b') 有效。
标签: javascript reactjs material-ui