728x90
반응형
React 리액트에서 bind() 함수 이해하기 (개념 및 사용법)
기본적으로 리액트에서는 render라는 함수 안에서 this는 컴포넌트 자체를 가리키는데 함수에서는 this가 아무값도 없습니다.
이때 bind() 함수를 사용하여 this를 주입하여 주는 겁니다.
# bind 함수 이해하기
먼저 var obj = {name : 'Moony'};
로 obj의 값에 담아놓고 bindTest()
함수로 인해 this.name
값을 출력 시 undefined
이라고 뜨게 됩니다.
이때 bindTest()
메서드가 this가 obj로 바인드 시켜주어 this.name
이 'Moony'
값을 가져올 수 있게 만들어 주는 것입니다.
자 이제 그럼 obj가 function의 this가 되게 bind()
함수를 사용하여 바인딩 해줘 봅시다!
var bindTest2 = bindTest.bind(obj);
기존에 만들어놓은 bindTest
함수를 .bind(obj)
를 통해 함수의 this
가 obj
를 가리키도록 해줍니다.
바인딩 이후 bindTest2();
호출 시 해당 함수의 this
는 obj
를 가리키도록 설정하였기 때문에 this.name
의 값을 가져와서 'Moony'
의 값이 console.log
에 찍힌 것을 볼 수 있습니다.
# 리액트 바인드 활용한 이벤트 함수 처리
리액트 글 모두 보러 가기
devmoony.tistory.com/category/Web/React%20%EB%A6%AC%EC%95%A1%ED%8A%B8
728x90
반응형
'Programming > React' 카테고리의 다른 글
[React 리액트] setState() - state 값 동적 변경 (0) | 2021.04.09 |
---|---|
[React 리액트] Each child in a list shoul have a unipue "key" prop 오류 해결 방법 (0) | 2021.04.07 |
[React 리액트] 컴포넌트 이벤트 처리 - 정리 및 예제 (onClick, priventDefault, bind, setState 등) (0) | 2021.04.05 |
[React 리액트] 리스트(배열) 데이터 여러 개 출력하는 방법 (props, key) (0) | 2021.04.01 |
[React 리액트] props와 state 개념 및 기본 예제 (0) | 2021.03.31 |