데코레이터가 잘 이해가 안갑니다.
@Field 하면 어떠한 객체에 있는것에 있는 Field 를 가져다 쓸거야~ 라고 말하면서 그러한 함수를 불러오는 건가요?? ㄷ
답변 1
0
안녕하세요! leejken530님!
데코레이터는 nestjs 자체에서 사용되는 데코레이터(ex, @Injectable())도 있고,
nestjs에서 mysql과 연동하여 사용되는 데코레이터(ex, @Column(), @Entity()) 도 있고,
nestjs에서 graphql과 연동하여 사용되는 데코레이터(ex, @Field(), @Mutation(), @Query())도 있답니다!
질문하신 내용을 보니 @Field()라는 데코레이터를 말씀하시는 것 같은데,
이 녀석은 nestjs에서 graphql을 연동할 때 필요하게 됩니다!
여기서 아래의 예시는 간단한 @Field() 데코레이터의 예시예요!
@Field(() => String)
name: string
위 코드는 graphql로 프론트엔드와 통신하여 데이터를 주고 받을 때, "name에는 String만을 담아서 주고받겠다!" 라는 의미가 되는 것이랍니다!
따라서, name에는 숫자 데이터를 담아서 프론트엔드와 주고 받을 수는 없겠죠?!^^
========================================================================
추가로, 수업때 진행했던 데코레이터(@) 직접 만들어보기에서 데코레이터(@)는 함수라는 것을 배우셨을 거예요.
따라서, @Field(() => String)는 graphql 라이브러리 만든 사람이 미리 만들어 놓은 함수가 되겠죠?!
따라서 위 함수에는 프론트엔드와 주고받을 name이 string 타입이 맞는지 검증하는 등의 로직이 들어있을 것 같네요!^^
소스코드즘 부탁드립니다.
0
49
1
윈도우에서 Node js를 설치하고 싶어요
0
48
0
그래프 ql 문서 사용할때 느낌표 남는거 어떻게 없애나요?
0
127
2
강의 전체 소스 코드를 받고싶습니다.
0
126
2
fontawesome 사용 문의
0
127
2
소스 코드 부탁드립니다~
0
135
2
깃 레포지터리 소스
0
130
2
커리큘럼12.css 정렬 에 나오는 과제 정답알고싶어요
0
106
2
10-01 Entity TypeOrmModule.forRoot 에 entities
0
132
3
강의 버전관련 문의입니다
0
139
2
Ubuntu 설치 관련
0
91
1
schema.gql 질문 드립니다.
0
78
1
서버 재실행시 Many to Many
0
156
3
input 관련 문의
0
123
2
Rest API 보다는 graphql이 주된 내용인데
0
166
2
강의 전체 소스코드 받을수있을까요?
0
194
1
도커볼륨 마운트 관련
0
170
2
findOne 타입스크립트오류
0
137
1
http => htrtps 호출 인증서 신뢰 오류
0
411
1
self-signed certificate in certificate chain 에러 발생
0
479
1
mongoose 설치 오류
0
171
1
특정 API, 특정 IP 허용 (단일경로에 CORS 활성화)
0
322
2
08-06
0
214
3
구조랑 패턴 관련해서 질문
0
142
2





