Is there any way I can set value of array in specific index with React imutability helper ?
For example something like this:
const newState = update(this.state , {
open[8]:{$set: false}
})
this.setState(newState);
or do I have to deep clone that array using JSON and then set new value at specific index and then use react imutability helper to update state?
Is there any way I can set value of array in specific index with React imutability helper ?
For example something like this:
const newState = update(this.state , {
open[8]:{$set: false}
})
this.setState(newState);
or do I have to deep clone that array using JSON and then set new value at specific index and then use react imutability helper to update state?
Share Improve this question asked Feb 23, 2017 at 16:48 ĽubomírĽubomír 1,2112 gold badges13 silver badges22 bronze badges 1-
You could use
{ open: state.open.filter((value, index) => index != 8) }
– Aaron Beall Commented Feb 23, 2017 at 20:37
1 Answer
Reset to default 7Assuming your state has the following format:
{
open: [
true,
false,
true,
...
]
}
I believe this should work:
const newState = update(this.state , {
open: {
8: {$set: false}
}
})