尝试通过单击更改标题的背景颜色(首先,最终我会使用样式进行更多更改。)。
但是它无法工作。
toggleHeader(){
var newState;
newState = "headerBig" ? "headerSmall" : "headerBig";
this.setState({
toggleHeader: newState
})
}
我要更改的是我的标题className = {this.state.toggleHeader}
我不正确吗?
一次更改后,控制台日志将继续返回“ headerSmall”。
固定
我使用此代码对其进行了修复...
添加了“ isHeaderBig”状态,我也切换了该状态。似乎是工作的两倍,但是。
toggleHeader(){ var newState = (this.state.isHeaderBig ? "headerSmall" : "headerBig"); this.setState({ toggleHeader: newState, isHeaderBig: !this.state.isHeaderBig }) }
最佳答案
toggleHeader(){
var newState;
newState = this.state.toggleHeader === "headerBig" ? "headerSmall" : "headerBig";
this.setState({
toggleHeader: newState
})
这是正确的方法,“ headerBig”始终为真