React에서 onChange 이벤트 사용
이벤트 시스템은 React 프레임워크에 포함된 가장 유용한 기능 중 하나입니다.
특히 onChange
이벤트는 React에서 가장 자주 처리되는 이벤트 중 하나입니다. 이것은 바닐라 JavaScript의 잘 알려진 onchange
속성을 기반으로 하지만 React의 onChange
이벤트에는 몇 가지 추가 기능이 포함되어 있습니다.
또한 개발자가 일반 JavaScript 이벤트와 구별할 수 있도록 camelCase로 작성되었습니다.
onChange
이벤트가 정확히 어떻게 작동하는지 이해하면 보다 강력하고 동적인 양식을 작성하는 데 도움이 될 수 있습니다.
React 입력이 있는 onChange
React에서 onChange
이벤트는 사용자의 입력이 어떤 식으로든 변경될 때 발생합니다. 사용자가 추가 텍스트를 입력하거나, 다른 옵션을 선택하거나, 확인란을 선택 취소하거나, 기타 유사한 경우에 입력이 변경될 수 있습니다.
체크박스 입력이 있고 사용자의 선택(부울
값)을 상태에 저장해야 하는 상황을 상상해 보십시오. 이 시나리오에서 onChange
는 매우 유용합니다. 사용자가 입력에 대한 마음을 바꾸고 선택을 취소할 때마다 상태가 업데이트됩니다.
다음은 예입니다.
return (
<input type="checkbox" onChange={(e) => this.setState("status": e.target.value)}/>
)
이것은 onChange
이벤트가 얼마나 유용한지 보여주는 간단한 데모입니다.
구성 요소 state
에 입력 값을 저장하여 이 요소를 제어된 입력으로 만듭니다. 이 용어는 내부 상태가 단일 정보 소스를 제공하기 위해 반응 구성 요소의 상태
와 병합된 입력을 설명합니다.
JSX에서 JavaScript 표현식은 두 개의 중괄호 사이에 위치해야 합니다. 핸들러를 별도로 정의하고 중괄호 내에서 호출할 수도 있습니다.
예를 들어:
<input type="checkbox" onChange={(e) => handleChange(e)}/>
더 복잡한 핸들러 함수의 경우 더 읽기 쉬운 접근 방식이 될 것입니다.
수동으로 React에서 onChange
이벤트 트리거
경우에 따라 기본 동작을 우회하고 onChange
이벤트를 수동으로 트리거해야 할 수도 있습니다.
브라우저가 암호를 자동으로 채워서 onChange
가 실행되지 않지만 애니메이션을 수행하려면 필요하다고 상상해 보십시오. 이 시나리오에서는 onChange
를 수동으로 트리거해야 합니다.
동일한 이벤트의 중복 인스턴스를 피하기 위해 때때로 React는 일부 이벤트를 의도적으로 삼키고 실행하지 않습니다. 솔루션은 기본 값 설정기 setNativeValue()
를 사용하는 것입니다. 이 문제에 대한 심층적인 이해를 얻으려면 이 유용한 블로그 게시물을 확인하세요.
Irakli is a writer who loves computers and helping people solve their technical problems. He lives in Georgia and enjoys spending time with animals.
LinkedIn