[TIL] 22.07.27

조혜인·2022년 7월 27일
0

오늘 한 일

  • Graphql에서 타 InputType을 가져와서 사용할 때 유용한 mapped-types
    • PartialType : 모든 필드를 가져와서 선택하여 데이터를 전달
    • PickType : 선택한 필드만 가져와서 모든 데이터를 전달
    • OmitType : 선택한 필드 제외 후 나머지 모든 데이터를 전달
/* PartialType() : CreateUserInput의 필드를 모두 가져와 선택적으로 전달*/
export class UpdateUserInput extends PartialType(CreateUserInput) {}


/* PickType() : CreateUserInput필드 중 name, address만 가져와 모두 전달*/
export class UpdateUserInput extends PickType(CreateUserInput, [
  'name',
  'address',
]) {}


/* OmitType() : CreateUserInput필드 중 name, email제외 후 모두 전달*/
export class UpdateUserInput extends OmitType(CreateUserInput, [
  'name',
  'email',
]) {}

/* CreateUserInput필드 중 id필드 제외 후 나머지는 선택적으로 전달*/
export class UpdateUserInput extends PartialType(
  OmitType(CreateUserInput, ['id']),
) {}
profile
코딩은 역시 재밌군

0개의 댓글