2016-07-22 4 views
2

SelectFields가 여러 개있을 수 있고 모두에 대해 하나의 onChange 핸들러를 사용하려는 구성 요소를 작성 중입니다. 어떤 SelectField가 onChange를 트리거했는지 알 수 있습니까? 어떤 SelectField가 onChange를 트리거했는지 알 수 있습니까?

는이 시점에서 나는 키 가 SelectField을 식별하는 값에 복용

onChange={this.onSelectChange.bind(this, key)}; 

에 의존. SelectField는 Array.map 본문에 생성됩니다.

바인딩을 피하고 싶었지만 더 좋은 방법을 찾지 못했습니다.

답변

0

함수를 연결하지 않으려면 명시 적으로 호출하십시오. 그리고 키 대신 식별을 위해 요소의 ID를 사용하려고합니다.

id="coolSelect" onChange={(e)=>this.onSelectChange(e.target.id)} 
+0

e.target.id를 사용하는 것은 내 첫 번째 시도 중 하나였습니다 (미안하지만 내 질문에 언급해야합니다). 핸들러의 이벤트 매개 변수는 SelectField가 아닌 MenuItem과 연결되어있는 것으로 보입니다. MenuItem 요소는 DOM의 SelectField와 관련이 없습니다. –