我我的状态存储在input
,的onChange函数中我做下面通关键对象更新嵌套属性值
input[e.target.name] = e.target.value;
它的工作,这将有
{"name":"james"}
如果我有这样的输入标签
<input name='name' onChange={this.handleChange} defaultValue=""/>
但是如果我的初始输入状态具有嵌套属性呢?
{
"name": "alice",
"hobby": {
"outdoor": "hiking",
"indoor": "reading"
}
}
如果我把name属性在输入姓名=“hobby.outdoor”输入状态的对象将是无效的
{"name":"james", "hobby.outdoor":"something"}
“hobby.outdor”是将被设置为道具名称的字符串。点是字符串的一部分,不会被视为代码运算符。 – disstruct