尝试通过单击更改我的标题背景颜色(首先,最终我会更改更多样式。)。
但是它无法工作。
toggleHeader(){
var newState;
newState = "headerBig" ? "headerSmall" : "headerBig";
this.setState({
toggleHeader: newState
})
我要更改的是我的 header className={this.state.toggleHeader}
我这样做不对吗?
console log 改变一次后一直返回“headerSmall”。
固定
我用这段代码来修复它... 添加了“isHeaderBig”状态,我也在切换它。似乎是双倍的工作,但是。
切换页眉(){
var newState = (this.state.isHeaderBig ? "headerSmall": "headerBig");
this.setState({
toggleHeader:新状态,
isHeaderBig: !this.state.isHeaderBig
})
}
最佳答案
toggleHeader(){
var newState;
newState = this.state.toggleHeader === "headerBig" ? "headerSmall" : "headerBig";
this.setState({
toggleHeader: newState
})
这是正确的方法,“headerBig”始终为真
关于javascript - 三元运算符不适用于 this.state React js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44487290/