더북(TheBook)

15.3.1 타입 선언하기

우선 앞으로 사용할 API의 응답 결과에서 사용할 타입들을 선언해줍시다.

프로젝트의 최상위 디렉터리에 api 디렉터리를 만들고, types.ts 파일을 다음과 같이 작성하세요.

api/types.ts

export interface User {
  id: number;
  username: string;
  email: string;
  provider: string;
  confirmed: boolean;
  blocked: null | boolean;
  role: number;
  created_at: string;
  updated_at: string;
}

export interface Article {
  id: number;
  title: string;
  body: string;
  user: User;
  published_at: string;
  created_at: string;
  updated_at: string;
}

export interface Comment {
  id: number;
  message: string;
  user: User;
  published_at: string;
  created_at: string;
  updated_at: string;
}

export interface AuthResult {
  jwt: string;
  user: User; 
}

우리가 사용할 API 서버에서 다루는 타입들이 몇 개 없기 때문에 이 파일에 모두 선언해줬습니다. 만약 타입의 수가 다양하다면 한 파일에 모두 몰아서 작성하는 것보다 종류별로 파일을 나눠서 작성하는 것이 더 좋을 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.