【发布时间】:2019-07-26 05:48:02
【问题描述】:
我有像下面这样的 crated 状态,在某些时候我想清除这个数组并用新的数组更新。我使用下面的代码进行清除,但是当我通过 react-developer 工具检查状态时,数组仍然没有发生任何事情。请帮助我作为 ReactJS 的新手。
state = {
formData:{
level:{
element:'select',
value:'Bachelors',
label:true,
labelText:'Level',
config: {
name:'department',
options: [
{val :"Bachelors", text:'Bachelors'},
{val:"Masters", text:'Masters'}
]
},
validation: {
required:false,
}
,
valid:true,
touched:false,
validationText:'',
},
现在我想通过以下方式清除选项数组:
let {options} = this.state.formData.level.config
options = []
this.setState({
options:options
})
但是我的数组没有清除。我怎样才能做到这一点?
【问题讨论】:
-
您正在状态中设置一个名为
options的新属性。您需要使用扩展运算符复制现有状态,然后将this.state.formData.level.config.options替换为您想要替换的任何内容。 -
嗨,仍然学习编程,我刚刚为您提供了一个解决方案。让我知道这是否有帮助。
标签: javascript arrays reactjs multidimensional-array