더북(TheBook)

6.1 React에서 DOM 이벤트 다루기

 

이벤트 핸들러를 정의해서 사용자 조작에 대응할 수 있는 React 엘리먼트를 만드는 방법을 살펴보자. JSX로 작성한 엘리먼트에 속성 값으로 이벤트 핸들러(함수 정의)를 정의한다(JSX를 사용하지 않고 createElement()를 이용해서 일반적인 자바스크립트로 작성한 경우에는 속성으로 넘겨줄 수 있다). 속성으로 사용하는 이벤트 이름은 표준 W3C DOM 이벤트를 onClick, onMouserOver처럼 카멜 표기법으로 작성한다.

onClick={function() {...}}

 

또는

onClick={() => {...}}

 

다음 예제 코드는 React에서 사용자가 버튼을 클릭했을 때 실행할 이벤트 리스너를 정의하고 있다. 이벤트 리스너에서 this를 콘솔에 표시하도록 했다. 여기서 event 객체는 내장 DOM 이벤트 객체를 개선한 것으로, 합성 이벤트(SyntheticEvent)라고 부른다.

<button onClick={(function(event) {
      console.log(this, event)
  }).bind(this)}>
  Save
</button>
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.