setState()는 컴포넌트의 state 객체에 대한 업데이트를 실행함
즉 state가 변경되면, 컴포넌트는 리렌더링 됨
State
객체를 사용하고 싶다면 컴포넌트를 생성할 때 가장 윗부분(render()
함수보다 먼저)에 constructor()
함수를 적어준다.
컴포넌트 생성자에서 super
를 호줄하기 전에는 this
를 사용할 수 없기 때문
즉, 컴포넌트의 시작 부분에서 constructor()
라는 함수가 컴포넌트의 초기화를 시켜줘야 State
에 값을 넣어 사용할 수 있는 것이다.
그리고 App 클래스 내부에서는 중괄호를 이용해 State
값을 가져와 사용한다.
props (“properties”의 줄임말) 와 state 는 일반 JavaScript 객체이다.
두 객체 모두 렌더링 결과물에 영향을 주는 정보를 갖고 있는데, 한 가지 중요한 방식에서 차이가 있음
props는 (함수 매개변수처럼) 컴포넌트에 전달되는 반면 state는 (함수 내에 선언된 변수처럼) 컴포넌트 안에서 관리된다.