리액트/이벤트핸들링

ch04.임의 메소드 만들기

webmaster 2021. 8. 10. 22:51
728x90
  • 이벤트에 실행할 자바스크립트 코드를 전하는 것이 아니라 함수 형태의 값을 전달하는 것이다.
  • 함수를 미리 만들어서 전달하는 방식이 존재한다.

기본 방식

  • 생성자에서 이벤트를 바인딩한다
    • 생성자
  • 이벤트 함수 작성
    • 이벤트 함수 작성
  • 이벤트 시 함수 호출 
    • 이벤트 호출
  • 함수가 호출될 때 this는 호출부에 따라 결정되므로 클래스의 임의 메서드가 특정 HTML 요소의 이벤트로 등록되는 과정에서 메소드와 this의 관계가 끊어지게되므로 바인딩 작업이 필요하다.

Property Initializer Syntax를 사용한 메소드 작성

  • 메서드 바인딩은 생성자에서 하는것이 정석이나 이를 불편하게 느낄수있음(새 메소드 추가 시, 생성자를 건드려야 한다)
  • 바벨의 transform-class-properties문법을 사용하여 화살표 함수 형태로 메서드를 정의하는 방식으로 해결
  • 화살표 함수 형태 메소드 정의
    화살표 형태로 메소드를 정의하여 생성자에서 바인딩을 하지 않아도 된다.

 

  •  

 

728x90