일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 지혜를가진흑곰
- 책을알려주는남자
- algorithmtraining
- algorithmTest
- 알고리즘 공부
- 프로그래머스 알고리즘 공부
- algorithmStudy
- 돈
- 프로그래밍언어
- 투자
- 알고리즘공부
- 백준알고리즘
- 재테크
- 자바
- 경제
- C
- 자바스크립트
- 다독
- 책알남
- JavaScript
- 독후감
- 알고리즘트레이닝
- Java
- 채권
- 화장품
- 독서
- 성분
- 서평
- 주식
- C++
Archives
- Today
- Total
탁월함은 어떻게 나오는가?
[Nest.js] 스웨거 사용시 순환 참조 에러(enum 사용할 경우) 본문
반응형
nestjs에서 스웨거 사용시 아래와 같은 순환 참조 에러가 발생했다.
nestjs의 공식 홈페이지에서는 밑에 에러와 동일하게 type: () => ClassType 을 하라고 한다.
하지만, 나같은 경우에는 그게 해결이 되지 않아 다른 방법을 찾았다.
에러
Error: A circular dependency has been detected (property key: "SOCCER"). Please, make sure that each side of a bidirectional relationships are using lazy resolvers ("type: () => ClassType").
변경 전 코드
코드는 회사내의 코드를 사용하기 어려워 유사하게 만든 코드이다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
enum CategoryType {
SOCCER = 'SOCCER',
BASEBALL = 'BASEBALL',
}
export class Model {
@IsString()
@IsNotEmpty()
@ApiProperty({
type: String,
required: false,
default: '',
maxLength: 10,
description: '제목은 최대 10자입니다.',
})
public title!: string;
@ApiProperty({
type: String,
required: false,
default: '',
})
public contents!: string;
@IsEnum(CategoryType)
@ApiProperty({
type: CategoryType,
required: true,
})
public category!: CategoryType;
}
|
cs |
변경 후 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
enum CategoryType {
SOCCER = 'SOCCER',
BASEBALL = 'BASEBALL',
}
export class Model {
@IsString()
@IsNotEmpty()
@ApiProperty({
type: String,
required: false,
default: '',
maxLength: 10,
description: '제목은 최대 10자입니다.',
})
public title!: string;
@ApiProperty({
type: String,
required: false,
default: '',
})
public contents!: string;
@IsEnum(CategoryType)
@ApiProperty({
enum: [
'SOCCER',
'BASEBALL'
],
})
public category!: CategoryType;
}
|
cs |
해결에 대한 설명
nestjs에서 설명하는 순환참조는 클래스간의 문제이기 때문에 적용이 되지않았다.
다만, enum방식을 그대로 적용했더니 동작이 가능해졌다.
반응형
'[Snow-ball]server > NestJS' 카테고리의 다른 글
[NestJs] must be a number conforming to the specified constraints 에러 해결 방법 (0) | 2023.09.07 |
---|---|
[Nest.js] 네스트js websocket 에러 (0) | 2023.05.24 |
[NestJS] Cannot read properties of undefined (reading '__garde__') ERROR (0) | 2023.02.19 |
[NestJS] 유닛 테스트(Unit Testing) 간단한 사용방법 코드 정리 (0) | 2023.02.01 |
[NestJS] Controller 단에서 @UseGuards 사용안했는데 Get요청이 401 Unauthorized 해결방법 (0) | 2022.12.08 |
Comments