很确定我知道这个问题的答案,因为我的 setState({})
确实什么也没做。
这是我拥有的构造函数:
constructor(props) {
super(props);
this.state = {
percentiles: {
incN: 'n',
incP1: 10,
incP2: 25,
incP3: 50,
incMean: 'Mean',
incP4: 75,
incP5: 90,
coN: 'n',
coP1: 50,
coMean: 'Mean'
}
}
}
后来我尝试做类似的事情:
handleClick(e) {
this.setState({
incN: e.target.id
})
}
哪里e.target.id = 5
并且它不会从 10
改变,所以我很确定如果在 constructor(props)
中分配它就不能被覆盖.
那么我应该把默认值放在哪里可以被覆盖?在 render()
也许?
最佳答案
incN 是百分位数的属性,因此您需要执行以下操作:
this.setState({
percentiles: {
...this.state.percentiles,
incN: e.target.id
}
});
关于javascript - 在 React 中,构造函数(props)中设置的值可以被覆盖吗?如果不是,如何设置可写默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48675677/