是否可以通过切换指令以以下方式设置状态?也许这些方式都不是一个好的解决方案
我可以设定:
return this.setState({
stat1: 'a'
})
要么
return this.state.stat1 = 'a'
第一种方式
books = (price) => {
switch(price) {
case 100:
return this.setState({
stat1: 'a'
})
case 1000:
return this.setState({
stat1: 'b'
})
case 2000:
return this.setState({
stat1: 'c'
})
default:
return this.setState({
stat1: ''
})
}
}
第二种方式
books = (price) => {
switch(price) {
case 100:
return this.state.stat1 = 'a'
case 1000:
return this.state.stat1 = 'b'
case 2000:
return this.state.stat1 = 'c'
default:
return this.state.stat1 = ''
}
}
最佳答案
好吧,您可以使用第一种方法,但是这也可以做到:
const books = price => {
this.setState({
stat1: price===100?"a"
:price===1000?"b"
:price===2000?"c"
:null
})
}
第二种方法是错误的请检查此以作解释Why we can't change states in react without calling setState()