상태 올리기의 원리는 간단합니다.
하위 Component에 props로 상위 Component의 함수를 전달해 주고, 하위 Component 에서는 그 함수를 호출하는 것입니다.
주의사항
가장 가까운 상위 Component로 전달한다. 무조건적으로 최상위 App Component로 올리지 않는다.
그러나, 되도록 하향식 데이터 흐름에 초점을 두고 작업하는 것이 좋다.
참고 : ko.reactjs.org/docs/state-and-lifecycle.html#the-data-flows-down
상위 Component 함수로 prop가 전달되고 나면, 하위 component는 props 값을 변경하는 것이 불가능합니다.
(props가 읽기전용이기 때문)
Props 제어방법
아래와 같이 상위 Component 함수로 prop가 전달되고 난 후에는 아래와 같이 제어한다.
ex) TemperatureInput에서 온도를 갱신하고 싶으면 this.props.onTemperatureChange를 호출하면 됩니다.
handleChange(e) {
// Before: this.setState({temperature: e.target.value});
this.props.onTemperatureChange(e.target.value);
// ...
출처 : ko.reactjs.org/docs/lifting-state-up.html
출처: https://blog.sonim1.com/185 [Kendrick's Blog]
'React & TypeScript > React' 카테고리의 다른 글
[React] useRef() 는 언제 사용하는가? (8) | 2021.01.29 |
---|---|
[React] 함수형 프로그래밍을 가능하게 하는 React Hook (부재 : useState가 이렇게 쉬운 것일 줄은...) (0) | 2021.01.28 |
[React] Props란 무엇인가? (0) | 2021.01.27 |
React Hook 개념 요약 (0) | 2021.01.20 |
React LifeCycle 생명주기 (최대한 쉽게 설명) (0) | 2021.01.15 |
React Component 생성 & 사용하는 방법 (0) | 2021.01.07 |
React 장점 1 (0) | 2021.01.06 |
댓글