monorepo의 GraphQL 코드 생성기

1614 단어 graphqldevopsmonorepo

Disclaimer: this post assumes you have knowledge of how to setup a monorepo


최근에 나는 graphql-code-generator 를 사용하기로 결정했다. 왜냐하면 나는 수동 컴파일 모드 정의에 싫증이 났기 때문이다. 그리고 매번 typescript 형식을 컴파일하기 때문이다.
graphql 코드 생성기가 있으면 모드만 쓰고 나머지는 생성됩니다. 짐작할 수 있습니다.
monorepo에서 사용하면 이 점을 할 수 있습니다. 따라서 모든 API는 실제 출처만 있습니다!
그것은 보기에 약간 이렇다.

우리의 (기본) 단일 환매 구조를 기획해 봅시다.
monorepo
 ┣ packages
 ┃ ┣ api 
 ┃ ┃ ┣ src
 ┃ ┃ ┃ ┣ index.ts 
 ┃ ┃ ┃ ┗ schema.gen.ts
 ┃ ┃ ┗ codegen.yml
 ┃ ┣ client
 ┃ ┣ server
다음은apicodegen.yml 파일의 외관입니다.
schema: http://localhost:4000/graphql
generates:
  ./src/schema.gen.ts:
    plugins:
      - typescript

I add .gen. to all generated files to make it easy to add in .gitignore


진정한 쿨한 부분은 우리 서버가 실행될 때api 패키지에서 실행될 때graphql-codegen --w 패턴에 대한 변경 사항을 자동으로 추적하는 것입니다.
클라이언트나 서버에서 가져오기만 하면 @monorepo/api 모든 종류의 typescript에 접근할 수 있습니다.

좋은 웹페이지 즐겨찾기