interface NewMeetup, omit

강연주·2025년 3월 18일

📚 TIL

목록 보기
146/186
🖥️ meetupType.ts

export interface Meetup {
  organizer: {
    nickname: string;
    profileImage: string;
  };
  isLike?: boolean;
  likeCount?: number;
  id: number; // 24.01.07 ThumbnailArea에 광고 아이템 하나씩 띄우는데 타입 필요해서 추가함
  // 25.03.14 id 뒤에 물음표 있었는데 ThumbnailArea에서 undefined는 할당할 수 없다고 타입 오류나서 지움
  name: string;
  description: string;
  place: string;
  placeDescription: string;
  startedAt: string | null;
  endedAt: string | null;
  adTitle: string;
  adEndedAt: string | null;
  isPublic: boolean;
  image?: string;
  category: string;
}

export interface NewMeetup extends Omit<Meetup, "id"> {}

MeetupForm에서 새 모임을 생성할 때, id가 포함된 인터페이스 Meetup을 타입으로 쓰고 있었다. 그런데 id?: number가 다른 컴포넌트에서 오류를 일으켜 물음표를 지웠더니 이제 NewMeetup에서 오류가 난다.

나머지 요소는 다 동일한데, id만 없는 interface NewMeetup을 만들어서 사용하면 된다!

Omit 이럴 때 이렇게 쓰는구나 깨달음!

profile
아무튼, 개발자

0개의 댓글