TypeError Cannot read property ‘setState’ of undefined

TypeError Cannot read property ‘setState’ of undefined

원인

호출하는 함수를 바인딩하지 않았기 때문에 발생하는 문제다.

해결법

  1. 바인딩 해주기
this.함수명 = this.함수명.bind(this);

그 후 let self = this; 이런식으로 새로운 변수를 만들어 쓴다.

  1. 화살표 함수 사용하기
    화살표 함수를 사용하면 자동으로 바인딩해주기 때문에 따로 바인딩할 필요가 없다.
    (자신만의 this를 생성하지 않기 때문에 this를 문맥 그대로 사용하면 됨)

카테고리:

업데이트: