Vite + Apollo Client + GraphQL Codegenの組み合わせでgraphql-codegenを実行すると、gql関数を以下のようにimportするためにエラーが出る。
import { gql } from '@apollo/client';
[vite] Named export 'gql' not found. The requested module '@apollo/client' is a CommonJS module, which may not support all module.exports as named exports.
CommonJS modules can always be imported via the default export, for example using:
import pkg from '@apollo/client';
const {gql} = pkg;
解決方法としては graphql-codegenの設定ファイルにgqlImportの設定を追加して再度コード生成する。
const config: CodegenConfig = {
...
generates: {
...
".": {
config: {
gqlImport: "@apollo/client/core#gql",
},
},
},
そうすると import { gql } from '@apollo/client/core'; が生成されるのでビルドエラーが回避できた 🎉