리엑트 교과서를 정리한 내용입니다.
6.1 React에서 DOM이벤트 다루기
아래 예제 코드는 이벤트 리스너에서 this를 콘솔에 표시하도록 한 코드. 여기서 event 객체는 내장 DOM이벤트를 객체를 개선한 것으로 합성 이벤트라고 부름
1 | <button onclick={(function(event){ |
아래 경우에 bind(tnis)로 바인딩하지 않는다.
- this를 이용해서 해당 클래스를 참조 할 필요가 없을때
- ES6+ 클래스 대신 예쩐방식인 React.createClass()를 사용할때. 이때는 createClass()가 자동으로 바인딩함.
- 화살표 함수(() => {})를 사용할 때
Reaact버전 15에서 지원하는 DOM 이벤트
이벤트 분류 | React가 지원하는 이벤트 |
---|---|
마우스 이벤트 | onClick, onContentMenu, onDoubleClick, onDrag, onDragEnd, onDragEnter, onDragExit, onDragLeave, onDragOver, onDragStart, onDrop, onMouseDown, onMouseEnter, onMouseLeave, onMouseMove, onMouseOut, onMouseOver, onMouseUp |
키보드 이벤트 | onKeyDown, onKeyPress, onKeyup |
클립보드 이벤트 | onCopy, onCut, onPaste |
폼 이벤트 | onChange, onInpute, onSubmit, onTnvalid |
포커스 이벤트 | onFocus, onBlur |
터치 이벤트 | onTouchCancel, onTouchEnd, onTouchMove, onTouchStart |
UI이벤트 | onScroll |
휠 이벤트 | onWheel |
영역선택 이벤트 | onSelect |
이미지 이벤트 | onLoad, onError |
애니메이션 이벤트 | onAnimationStart, onAnimationEnd, onAnimationIteration |
트랜지션 이벤트 | onTransitionEnd |
6.1.1 캡쳐 및 버블링 단계
1 | class Mouse extends React.Component { |
6.1.2 React이벤트 살펴보기
6.1.3 React 합성 이벤트 객체 다루기
1 | class Mouse extends React.Component { |
6.1.4 이벤트와 상태 사용하기
1 | class Content extends React.Component { |
6.1.5 이벤트 핸들러를 속성으로 전달하기
1 | class ClickCounterButton extends React.Component { |
6.1.6 컴포넌트 간의 데이터 교환
1 | class ClickCounterButton extends React.Component { |
1 | class Content extends React.Component { |
6.2 React가 지원하지 않는 DOM이벤트 처리하기
1 | class Radio extends React.Component { |
6.3 React를 다른 라이브러리와 통합하기: jQurey UI이벤트
6.3.1. 버튼 통합하기
방법1 jQuery슬라이더를 위한 이벤트를 React컴포넌트에서 등록하는 방법
1 | class SliderButtons extends React.Component { |
6.3.2 라벨 통합하기
1 | class SliderValue extends React.Component { |