const [data, setData] = useState([]);
const getData = useCallback(async () => {
try {
const json = await ( await fetch(``)).json();
console.log(json); ................................... 1
setData(json);
console.log(data); .................................. 2
}catch (err) { }
}, [setData]);
useEffect(() => {
getData();
}, []);
1에는 데이터 찍히는데
2는 깡통 배열나와..
나 너무 힘들어 형들......
스테이트는 바로 업데이트 안됨.
너가 setState(data)하면 리액트는 그걸 좀 시간 걸려서 처리하는거임.
고맙읍니다.. 이 은혜는 잊지 않겠읍니다..
시간 걸려서는 부정확한 표현일지도. 암튼 리액트 작동하는 과정에서 스테이트 업데이트할 때가 있어서 그때 업데이트됨.
부연 설명까지.. 압도적 감사..