개발/TypeScript
🫧TS:: Object is possibly 'null' 에러 발생시
hyuunii
2023. 1. 14. 14:13
✔︎상황::
이상했따. 서버 잘 켜지고, 심지어 코드 잘 작동한다.(회원가입/로그인 전부 문제가 없음... 토큰도 잘나옴;;;;)
근데 68번째줄의 getNickname변수의 nickName값이 빨간줄이 계속 그였다...
✔︎에러::
Object is possibly 'null'
✔︎발생 원인::
"getNickName에서 nickName이란 object를 뽑는다규욥? 근데 걔가 null일 수 있어요!!!!"
라고 똑똑한 타입이가 외치고 있는 거여따.
타입.. 체고당..... 너 쫌 귀여워..............
✔︎해결법::
구롷다면 nickName이 null이라면 Error를 던지게끔 핸들링을 해주면 될 일이어따.
const getNickName = await this.usersService.getNickName(userId);
if (!getNickName) {
throw new Error();
}
에러 핸들링을 하자 마자 바~아로 빨간줄이 사라지는 매직🪄을 구경할 수 있었따.
const foo: string | null = 값 일때,
if (!foo) {
핸들링
}
이런식으로.. 핸들링을 한 바로 아래부터는 타입이가 알아서 foo는 null이 아니라고 판단한당.
이미 위에서 if문 분기로 null일경우를 처리해버렸쓰니까.