lodash map 함수 비동기 처리 이슈

wononly.dev·2022년 4월 3일
0

TROUBLE-SHOOTING

목록 보기
4/6
post-thumbnail

세부 내용

lodash map 함수 사용하여 내부에서 데이터 조회시 response 데이터 빈배열로 반환(DB에 데이터가 있음에도)

const rsltList: object[] = []
_.map(idList, async(id) => {
	const result = await getResult(id)
	rsltList.push(result)
})
response(res, rsltList)

원인 파악

map 함수의 비동기 처리

해결 방법

map 함수 대신 for await 사용

const rsltList: object[] = []
for await (const id of idList) {
	const result = await getResult(id)
	rsltList.push(result)
})
response(res, rsltList)

해결 방법 적용 결과

for await 대체 후 해당 부분 문제있던 API 테스트 진행,
데이터 리스트 넘어오는 결과 값 확인함

profile
항상 이유와 과정을 궁금해하는🤔 백엔드 개발자의 기술 블로그 입니다!

0개의 댓글