Hi, There!
안녕하세요, 바오밥입니다.
목차
- 문제
- 솔루션
- Reference
문제
몽고DB에 저장된 댓글 데이터를 불러오려고 합니다.
그러나, Null 객체는 map 함수를 사용할 수 없기 때문에 react 컴포넌트 내에서 호출할 때 오류가 발생합니다.
아래는 오류가 발생한 실제 프로젝트 코드입니다.
Object.values 함수를 실행하기 위해서는 viewComment라는 state가 null 객체가 아닌 배열이어야 합니다.
Node JS에서 API를 설계할 때 mongoose의 findOne 내장 함수를 사용하였는데, findOne 내장 함수는 값이 비어있는 경우 Null 객체를 반환합니다.
솔루션
findOne 내장 함수 대신 find 내장 함수를 사용하면 Null 객체 대신 빈 배열을 반환 받을 수 있습니다.
이로 인해 Object.values 함수를 문제 없이 호출할 수 있게 되었습니다.
자연스레 React 컴포넌트 내의 문제도 사라졌습니다.
Reference
- 삽질의 결과