Reactjs 静态和动态键和值的设置状态之间的差异?
当我习惯于静态地设置用户名的值时,我习惯于使用下面的代码来设置变量名中的值Reactjs 静态和动态键和值的设置状态之间的差异?,reactjs,Reactjs,当我习惯于静态地设置用户名的值时,我习惯于使用下面的代码来设置变量名中的值 this.setState({ 'userName' : event.target.value }) 但这和我以前在同一个键名中设置相同的值时是一样的,但这次是动态设置的 在我的HTML属性中,我将名称设置为userName,并且onChange我使用事件调用函数。在该event.target.name中,我得到了userName和event.target.value中我得到了我键入的值,但在设置状态期间,以下代码不起
this.setState({ 'userName' : event.target.value })
但这和我以前在同一个键名中设置相同的值时是一样的,但这次是动态设置的
在我的HTML属性中,我将名称设置为userName
,并且onChange
我使用事件调用函数。在该event.target.name
中,我得到了userName
和event.target.value
中我得到了我键入的值,但在设置状态期间,以下代码不起作用:
this.setState({ event.target.name : event.target.value })
相反,我使用[event.target.name]
设置键,这很好:
this.setState({ [event.target.name] : event.target.value })
实际上我需要的是,上面两个代码之间的区别是什么?它是如何静态和动态工作的?下面是一个语法错误:
this.setState({ event.target.name : event.target.value })
以下表示event.target.name
的值将作为键名:
换言之:
{name:value}
表示object.name=value
,这意味着将value
分配给“name”
键
{[name]:value}
意味着对象[name]=value
,这意味着将值
分配给值为名称
的键
谢谢兄弟,真的很有用。很乐意帮忙。如果答案回答了你的问题,你能接受吗?你的答案被接受了,兄弟,谢谢你的善意回答。这回答了你的问题吗?
this.setState({ [event.target.name] : event.target.value })