멍청한 에러들을 기록한다.
What happend?
NestJS로 백엔드 개발을 하던 중, 기존 Array에 push하는 부분에서 자꾸만 'ERROR [ExceptionsHandler] XXX is not a function' 에러가 발생했다.
로직도 수차례 변경해 보고, push 함수가 아니라 새로운 Array를 만들어 slice로 깊은 복사 후 재 할당도 해보고 온갖 짓을 다 했으나 해결이 안 됐다.
자고 일어난 다음날, 테스트를 하다가 해결했다.
역시 졸린 상태에서는 개발하는 거 아니다.
What went wrong?
Movie 정보를 담고 있는 this.movie는 Array인데, update시 호출하는 deleteMovie 로직에서 delete 후 Array가 아닌 List로 담는 바람에 오류가 발생했다.
List에는 당연히 push function이 없으니까 위와 같은 에러가 발생한다.
Lesson & Learned
- API 테스트 결과 확실히 살피기 - 자료형이나 Depth 등이 변하진 않았는지
- TypeScript 맹신하지 않기 - movies를 Movie[]로 선언하였으나 로직 중에 해당 변수에 List를 할당해도 에러가 발생하지 않는다.
(그러나 다이렉트로 movies = {}; 따위를 넣어버리면 오류가 발생한다.)
끝.
반응형
'다 배울거야 > Errors' 카테고리의 다른 글
[puppeteer] ElementHandle.click() vs Element.click() await 비동기 관련 실수 (0) | 2023.04.15 |
---|---|
[React] 'Warning: Each child in a list should have a unique "key" prop.' 해결 (0) | 2023.04.07 |
[Docker] 'Docker Desktop Starting...' 프리징 현상 해결 (0) | 2023.04.01 |
[typeorm] CreateDateColumn, UpdateDateColumn 등 사용 시 컬럼 값 미 입력 현상 (0) | 2023.03.19 |
[NestJS] ValidationPipe 'property ... should not exist' 에러 (0) | 2023.03.18 |