I have my state like
this.state = {
data: [],
dataloaded: false,
isopen: false,
firstname: '',
lastname:'',
email:'',
gender: '',
avatar: '',
number:'',
dob:new Date()
};
And I am having form to update state,
every text input has onchange such as this onChange={this.handleOnChange("firstname")}
And my hndleOnChange function is:
handleOnChange = field => event => {
console.log(event.target.value,field)
this.setState({field: event.target.value})
}
this doesnt work This is not updating the state but if i do
handleOnChange = field => event => {
console.log(event.target.value,field)
this.setState({[field]: event.target.value})
}
this works
Why does adding bracket infront of objectname it gets correct?