토이 프로젝트에서 Async Await

심지훈·2021년 6월 1일
0

토이프로젝트로 To-Do 앱을 만들고 있다.
API를 통해 내 지역의 이름과 날씨를 불러와서 화면에 표현하는 기능을 구현하고 있었다.

처음에는 UI렌더링과 날씨 API를 한곳에서 호출해서 아키텍처를 조금 개선하고자 UI렌더링과 API호출부를 다른 클래스에서 처리하기로 했다.

처음에 getWeather 메서드 내부를 보면 fetchWeather앞에 await을 씀으로써 val에 값이 할당될때 까지 기다려주는 줄 알았다. 근데 fetchWeather가 계속 Promise[Pending]을 반환하는것이다.

찾아보니까

(https://stackoverflow.com/questions/50736004/async-await-with-express-returns-promise-pending)

A 라는 메서드 내부에서 async / await을 사용하는 B라는 메서드가 있으면 A 메서드도 역시 async / await을 해줘야한다.

이렇게 하니까 값이 잘 나온다. 비동기 및 프로미스에 대해 좀 더 공부해봐야겠다.

profile
유연한 개발자

0개의 댓글