useEffect 밖에 let data 이런식으로 변수를 선언해두고
useEffect 에서 값을 넣어서 컴포넌트 retrun 할때 값을 표시해 주려고 했는데
해당 값이 undefined 으로 나오는 문제를 발견했다..
검색해보니 이미 렌더링이 끝난 뒤에 (return이 실행된 뒤에) 아무리 data의 값이 바뀌었기 때문이라고 한다. 그렇기에 값이 바뀌었을때 리액트가 인식하고 다시 렌더가 되려면 state를 사용 해야 한다.
useEffect(() => {
(async () => {
const result = await payApprove(dataPayApprove);
if (result.approved_at) {
await setApprove({ ...result });
}
console.log(result);
})();
},[]);
위와 같이 state변수를 사용해서 데이터를 저장하니 문제없이 작동되었다.