【发布时间】:2017-07-20 06:22:18
【问题描述】:
我已经在 React 上工作了几个星期了,虽然我已经掌握了大部分基本语法(props、states),但我仍在努力与一些概念建立联系,尤其是添加类当状态发生变化时。我正在尝试构建一个 simon say 游戏,其中包含四个按钮,全部使用 Button 组件构建。这些最初设置为具有 0.3 的不透明度和 false 的活动状态。单击时,“活动”状态变为真,但我一生无法弄清楚如何添加一个可以使按钮完全不透明的 CSS 类。这是我的代码:
class App extends Component {
constructor(){
super();
this.state = {
active: false
}
}
handleClick(){
this.setState({active: !this.state.active})
}
renderButtons(i, f){
return <Button value={i} className="button" id={f} active= {this.state.active} onClick={() => this.handleClick()}/>
}
render() {
return (
<div className="App">
{this.renderButtons("red", "buttonRed")}
{this.renderButtons("blue", "buttonBlue")}
{this.renderButtons("green", "buttonGreen")}
{this.renderButtons("yellow", "buttonYellow")}
</div>
);
}
}
还有我的 CSS:
.button{
width: 100px;
height: 45px;
opacity: .3;
margin: 0 auto;
margin-bottom: 30px;
}
#buttonRed{
background: red;
}
#buttonBlue{
background: blue;
}
#buttonGreen{
background: green;
}
#buttonYellow{
background: yellow;
}
所以,此时,我只想在单击按钮时添加一个类,同时仍将“按钮”类保留在组件中。有人可以帮忙吗?
【问题讨论】:
标签: javascript css reactjs