在我的React应用程序中,我有一个表单,并将输入字段中显示的值绑定到对象中其对应的属性,但是发生了一些奇怪的事情。
我的用户对象如下所示:
{
firstName: "",
lastName: ""
}
如果我将输入字段与此处显示的名称绑定到属性,则无法在输入字段中键入内容。
但是,如果我使用大写的属性名称(如下面的代码所示),则可以在输入字段中键入内容,但无法更新其值。我放了一个调试器以查看发生了什么,并注意到一旦按下onChange函数,某些属性名称就会被大写。因此,user.firstName成为用户。˚F irstName。所以下面的代码允许我在输入字段中键入内容,但无法捕获输入的值,因为对象中的属性名称仍为firstName
<input type="text" name="firstName" value={user.FirstName} onChange={myChangeFunction} />
知道是什么原因造成的吗?
我只是想出了问题。创建输入字段的确切方法如下:
<input type="text" name="FirstName" value={user.firstName} onChange={myChangeFunction} />
如您所见,FirstName
即使将值设置为,我也将名称设置为user.firstName
。
当我将其更改为时name="firstName"
,它开始可以正常工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句