-
[React] React에서 input 이벤트 사용하기 (onChange, onInput, onBlur)프론트엔드 2022. 2. 10. 17:36
자바스크립트의
onChange
,onInput
이벤트는onChange
: input에서 포커스가 벗어났을 때, input에 입력된 값이 변경되었다면 이벤트 발생onInput
: input에 입력된 값이 변경될 때마다 이벤트 발생
이렇게 이벤트 발생 조건에 차이가 있다.
그런데 React에서는
onChange
,onInput
이 동일하게, input 값이 변경될 때마다 (포커스 아웃이 없어도)이벤트가 발생한다.
그래서 리액트에서는
onChange
와onInput
이 사실상 동일한 이벤트로 취급되고,이 중에서는
onChange
가 더 자주 사용되는 것 같다.그렇다면 React에서 자바스크립트의
onChange
이벤트처럼input에서 포커스가 벗어났을 때 값의 변경이 있는 경우 이벤트를 감지하려면 어떻게 해야할까?
=>
onBlur
이벤트를 걸어서 포커스가 벗어나는 것을 감지하고,그 다음에 이전값과 현재값을 비교해서 값의 변경이 있는지 수동으로 확인해주면 된다.
Reference :
(Velog(https://velog.io/@seomoon/React-Input-onChange-onInput-%EC%9D%B4%EB%B2%A4%ED%8A%B8)에서 이동해 온 글입니다!)
'프론트엔드' 카테고리의 다른 글
[Web] 브라우저의 기능과 기본 구조 (0) 2022.02.10 [Web] 세션/쿠키 인증과 토큰 인증(Access Token, Refresh Token) (0) 2022.02.10 [반응형 웹] 어떤 해상도의 기기가 가장 많을까? 해상도 점유율 확인하기 (0) 2022.02.10 [React] API 주소 환경변수로 분리하기 (개발서버/실서버) (feat.CRA, github-actions) (0) 2022.01.09 [React] React-Router-DOM 현재 선택된 메뉴 표시하기 (NavLink) (0) 2022.01.09