[Javascript] class 내에서 this binding 문제..

cho yunsu·2021년 9월 22일
0

class 내에서 정의된 메소드(함수)를 다른 함수의 인자로 전달할 때.. 정의된 메소드(함수) 내의 this 정보를 잃는다... 자바스크립트에서만...
해결법
1. this.onClick = this.onClick.bind(this)
function.bind()는 바인드된 새로운 함수 반환한다.

  1. 콜백내에서 화살표함수.
    a.addEventListener("click", e => this.onClick(e))

  2. 콜백으로 들어갈 메소드를 화살표형태로 정의한다.

** function.bind(null, a) : 선행될 인수를 설정하여 함수 생성.

profile
Growing Developer!!

0개의 댓글