2016-12-03 1 views
0

제 React 앱에 양식이 있는데, 입력 필드에 표시된 값을 객체의 해당 속성으로 연결하고 있지만 이상한 일이 일어나고 있습니다.객체 속성 이름이 대문자로 바뀌고 있습니다.

내 사용자 개체는 다음과 같습니다

여기에 표시된대로 내가 이름으로 속성에 내 입력 필드 넥타이 경우
{ 
    firstName: "", 
    lastName: "" 
} 

, 내 입력 필드에 입력 할 수 없습니다.

그러나 아래 코드와 같이 속성 이름을 대문자로 입력하면 입력 필드에 입력 할 수 있지만 해당 값을 업데이트 할 수는 없습니다. 디버거를 넣어서 무슨 일이 일어나고 일단 onChange 함수를 누르면 일부 속성 이름이 대문자로 바뀌는 것을 알 수 있습니다. 따라서 user.firstName은 사용자가됩니다. F irstName. 그래서 아래의 코드는 나를 입력 필드에 입력 할 수 있지만, 객체의 속성 이름은 여전히 ​​

<input type="text" name="firstName" value={user.FirstName} onChange={myChangeFunction} /> 

이 원인이 될 수 있습니다 어떤 생각을 FIRSTNAME 때문에 입력 된 값을 캡처 할 수 없습니다 수 있습니다?

+0

문제가있는 jsfiddle/snippet을 만들 수 있습니까? – QoP

답변

0

방금 ​​문제를 파악했습니다. 내 입력 필드를 생성 정확한 방법은 다음과 같이했다 : 당신이, 내가 값이 user.firstName로 설정하더라도 FirstName에 이름을 설정했다 볼 수 있듯이

<input type="text" name="FirstName" value={user.firstName} onChange={myChangeFunction} /> 

.

name="firstName"으로 변경하면 제대로 작동하기 시작했습니다.

관련 문제