给出immutability-helper
节,如:
new_state = update(this.state, {$merge: {
name: event.target.value
}});
有没有办法取代'名称'上面带有参数/变量的键?我想让这种类型的处理程序更通用。就像向包含此节的函数发送一个arg一样,它告诉update更新要合并的内容,类似于(没有工作,尝试创建密钥' arg'):
handleChange = (arg, event) => {
new_state = update(this.state, {$merge: {
arg: event.target.checked
}})
// setState(), etc.
}
我无法找出让它发挥作用的秘诀。
答案 0 :(得分:3)
要更新动态密钥,您需要在[]
中添加
handleChange = (arg, event) => {
new_state = update(this.state, {$merge: {
[arg]: event.target.checked
}})
// setState(), etc.
}
您可以找到文档 here