codestates / codestates/Roadgram

[Error-Handling] ForEach 비동기 처리 에러

Open
#288 0 comments 1 reaction 1 assignee Claimed by @Muzzle-kr View on GitHub
server
Dominant language
TypeScript
Stars
5
Forks
5
PR merge metrics
No merged PRs in 30d

Description

> ### 어떤 에러인가요?
> * 비동기 처리에 forEach 사용으로 인한 값 비정상 전달

> ### 에러 메시지
> 에러메세지 없음. tags 배열에 값이 전달되어야하나 빈 배열로만 전달됨
![image](https://user-images.githubusercontent.com/91880235/160082145-384bdee4-dc82-464c-b273-061c2de5bb93.png)

> ### 에러 핸들링 방법
> forEach는 비동기 처리가 정상적으로 되지 않음.
> 비동기 처리 시 1. 순차처리(순서 보장) 혹은 2. 병렬처리(나은 성능)라는 접근법에 대한 고민이 필요하다.
> 순차처리 시 for of문을 사용하고 병렬처리 시에는 Promise.All + map을 사용한다.
> 문제가 발생한 태그 값은 순서가 보장되어야 되므로 for of문을 사용하여 에러핸들링을 한다.
>
> (기존)
![image](https://user-images.githubusercontent.com/91880235/160080204-920f8761-b941-43b5-86a1-70f161b1e80c.png)
> (변경)
![image](https://user-images.githubusercontent.com/91880235/160080187-31362e62-5203-4661-9c09-baf637fc8642.png)
> 값 정상작동 확인
![image](https://user-images.githubusercontent.com/91880235/160082607-54f03b6e-e583-4336-9b87-686bc6a32b4c.png)
> ### 에러 핸들링을 위해 참고한 레퍼런스 링크
> - [링크1](https://constructionsite.tistory.com/43)
> - [링크2](https://velog.io/@hanameee/%EB%B0%B0%EC%97%B4%EC%97%90-%EB%B9%84%EB%8F%99%EA%B8%B0-%EC%9E%91%EC%97%85%EC%9D%84-%EC%8B%A4%EC%8B%9C%ED%95%A0-%EB%95%8C-%EC%95%8C%EC%95%84%EB%91%90%EB%A9%B4-%EC%A2%8B%EC%9D%84%EB%B2%95%ED%95%9C-%EC%9D%B4%EC%95%BC%EA%B8%B0%EB%93%A4#4-%EC%88%9C%EC%B0%A8%EC%B2%98%EB%A6%AC%EC%99%80-%EB%B3%91%EB%A0%AC%EC%B2%98%EB%A6%AC)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.