상태 올리기의 원리는 간단합니다.
하위 Component에 props로 상위 Component의 함수를 전달해 주고, 하위 Component 에서는 그 함수를 호출하는 것입니다.
주의사항
가장 가까운 상위 Component로 전달한다. 무조건적으로 최상위 App Component로 올리지 않는다.
그러나, 되도록 하향식 데이터 흐름에 초점을 두고 작업하는 것이 좋다.
참고 : ko.reactjs.org/docs/state-and-lifecycle.html#the-data-flows-down
State and Lifecycle – React
A JavaScript library for building user interfaces
ko.reactjs.org
상위 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 |