我有这个
handleChange(e){
this.setState(
update(this.state, {
user: {
$merge: {
firstname_user: this.firstname_user.refs.input.value,
lastname_user: this.lastname_user.refs.input.value,
password_user: this.password_user.refs.input.value,
newPassword_user: this.newPassword_user.refs.input.value,
confirmPassword_user: this.confirmPassword_user.refs.input.value,
}
}
})
)
}
我只想执行一个通用的setState
。
因为目前,当我更改一个输入时,我的所有值都会被 setState
更改。
我尝试了类似的操作,但我可以访问ref
。键 [e.target.name]
有效,但使用相同的方法该值不起作用。
this.setState(
update(this.state, {
user: {
$merge: {
[e.target.name]: this.[e.target.name].refs.input.value,
}
}
})
);
请问如何解决?
最佳答案
似乎是语法错误,请尝试以下操作:
$merge: {
[e.target.name]: this[e.target.name].refs.input.value,
}
关于javascript - 如何在ReactJS中通过ref动态设置State,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42460591/