리액트로 상태관리를 하는 방법
⇒ 계층구조로 인한 상태관리(컴포넌트 refresh)의 어려움.
function A(){
setLoading(false);
alert("로딩이 끝났습니다.");
}
// 대부분의 경우 setLoading이 먼저 수행되나 실제로는 비동기적으로 수행됨.
function B(()=>{
setLoading(false);
}){
alert("로딩이 끝났습니다.");
}
// 콜백함수로 이를 해결
function A(){
setLoading(true);
}
function B(){
setLoading(true);
}
// A, B가 순차적으로 수행되었다고 가정하자. A수행 이후 Loading이 true값을 가지나
// B가 수행되는 경우에도 컴포넌트는 다시 렌더링이된다