내가해냄
find()와 findOne()을 사용한 함수에서 반환 타입을 명시할 때
836586697769
2024. 3. 23. 14:37
await this.aRepository.find()를 사용한 함수에서는 반환 타입을 Promise<A[]>로 명시해도 됐는데, await this.aRepository.findOne()을 사용한 함수에서는 반환 타입을 Promise<A>로 명시했더니 에러가 뜸
TypeScript에서 반환 타입을 명시할 때
find()
- 조건에 맞는 모든 결과를 배열 형태로 반환
- 조건에 맞는 결과가 없을 경우에는 빈 배열을 반환
findOne()
- 단일 엔티티를 반환
- 아무 것도 찾지 못할 경우에는 null을 반환
따라서
- 반환 타입을 A | null로 명시
- null 체크를 하고 A가 반환될 것이라는 확신을 가질 수 있는 상황에서만 반환 타입을 A로 명시