[typescript] 타입스크립트를 사용한 GraphQL 쿼리 검증 방법
GraphQL은 클라이언트와 서버 간의 데이터 통신을 위한 강력한 쿼리 언어입니다. 타입스크립트와 함께 사용하면 더욱 강력한 타입 안정성을 제공할 수 있습니다. 타입스크립트를 사용하여 GraphQL 쿼리를 검증하는 방법에 대해 알아보겠습니다.
1. GraphQL 스키마 파일 생성
가장 먼저 할 일은 GraphQL 스키마를 정의하는 .graphql
파일을 생성하는 것입니다. 이 파일에는 서버에 정의된 모든 쿼리, 뮤테이션, 서브스크립션 및 타입이 포함됩니다.
// schema.graphql
type User {
id: ID!
name: String!
age: Int!
}
type Query {
getUser(id: ID!): User
}
2. 타입 정의
다음으로는 타입 정의 파일을 생성합니다. 이 파일에서는 GraphQL 쿼리 및 응답에 대한 타입을 정의합니다.
// types.ts
export type User = {
id: string;
name: string;
age: number;
};
export type Query = {
getUser: (args: { id: string }) => User;
};
3. GraphQL Code Generator 설치
GraphQL Code Generator를 사용하면 GraphQL 쿼리 및 스키마를 기반으로 타입 정의 파일을 자동으로 생성할 수 있습니다.
npm install @graphql-codegen/cli @graphql-codegen/typescript @graphql-codegen/typescript-operations @graphql-codegen/typescript-resolvers
4. 코드 생성
GraphQL Code Generator를 사용하여 타입 정의 파일을 생성합니다.
npx graphql-codegen --config codegen.yml
5. 타입 안정성 활용
이제 생성된 타입 정의 파일을 사용하여 타입 안정성을 활용할 수 있습니다.
import { User, Query } from './types';
const user: User = {
id: '1',
name: 'John',
age: 30,
};
const query: Query = {
getUser: (args) => {
// 쿼리 수행
return user;
},
};
위와 같이 타입스크립트를 사용하여 GraphQL 쿼리를 검증할 수 있습니다. 이를 통해 타입 안정성을 제공하고 개발 프로세스를 보다 안정적으로 만들 수 있습니다.
더 자세한 내용은 GraphQL Code Generator 공식 문서를 참고하시기 바랍니다.