일기/에러일기
[에러일기] 11회차 - DTO를 통한 선택적(옵셔널) 프로퍼티
표자
2023. 3. 13. 10:40
728x90
반응형
1. 문제
맛집리스트 생성시 처음에는 이름만 데이터로 받고 생성하려함. (수정시에는 다른 정보도 선택적 수용)
그런데 네임만 입력하니 다른것도 입력하라는 문구가 발생
2. 시도해본 것들
@IsString()
readonly type?: 'myList';
위와 같이 type? 로 모두 적어줬으나 계속 같은 에러 발생
{
"success": false,
"timestamp": "2023. 3. 13. 오전 10:28:58",
"statusCode": 400,
"message": [
"type must be a string",
"description must be a string",
"image must be a string",
"visibility must be a string"
],
"error": "Bad Request"
}
3. 해결과정
GPT에게 연속적으로 질문했다.
처음에는 ?를 붙이라 했고 말해준대로 해도 안된다하니,
main.ts 파일에서 다음과 같이 app.useGlobalPipes()를 적용하라해서 이미 있는거라고 하니
@IsString()
@IsOptional()
readonly type?: 'myList';
@IsOptional까지 넣으라고 답변해주었고 실행하니 정상적용되었다.
4. 알게 된 점
물음표만 붙이면 모두 옵셔널이 되는줄 알았는데,
옵셔널 데코레이터가 있다는걸 알게되었다. 앞으로도 자주 쓸 것 같은 지식!
728x90
반응형