Page 24 -
P. 24
7.2.2 constructor 메서드
constructor(props) { ... }
이것은 컴포넌트의 생성자 메서드로 컴포넌트를 만들 때 처음으로 실행됩니다. 이 메서드에서는
초기 state를 정할 수 있습니다.
7.2.3 getDerivedStateFromProps 메서드
이것은 리액트 v16.3 이후에 새로 만든 라이프사이클 메서드입니다. props로 받아 온 값을 state에
동기화시키는 용도로 사용하며, 컴포넌트가 마운트될 때와 업데이트될 때 호출됩니다.
static getDerivedStateFromProps(nextProps, prevState) {
if(nextProps.value != = prevState.value) { // 조건에 따라 특정 값 동기화
return { value: nextProps.value };
}
return null; // state를 변경할 필요가 없다면 null을 반환
}
7.2.4 componentDidMount 메서드
componentDidMount() { ... }
이것은 컴포넌트를 만들고, 첫 렌더링을 다 마친 후 실행합니다. 이 안에서 다른 자바스크립트 라
이브러리 또는 프레임워크의 함수를 호출하거나 이벤트 등록, setTimeout, setInterval, 네트워
크 요청 같은 비동기 작업을 처리하면 됩니다.
7.2.5 shouldComponentUpdate 메서드
shouldComponentUpdate(nextProps, nextState) { ... }
이것은 props 또는 state를 변경했을 때, 리렌더링을 시작할지 여부를 지정하는 메서드입니다. 이
메서드에서는 반드시 true 값 또는 false 값을 반환해야 합니다. 컴포넌트를 만들 때 이 메서드를
176
리액트를 다루는 기술_개정판(본문)최종출력용.indb 176 2019-08-20 오전 11:03:03