Estoy usando graphql-server-express de Apollo con Node y me gustaría convertir mis archivos de definición de esquema "typedef" en archivos .graphql or .gql para mayor claridad y resaltado de sintaxis.
¿Cuál es la mejor manera de hacer esto? No puedo encontrar buenos recursos en línea más allá de Babel (?), que parece ser la única opción.
¡Muchísimas gracias por la ayuda!
Estoy seguro de que encontró la solución hasta ahora, pero para otros esto podría ser útil https://github.com/prismagraphql/graphql-import .
import { importSchema } from 'graphql-import' import { makeExecutableSchema } from 'graphql-tools' const typeDefs = importSchema('schema.graphql') const resolvers = {} const schema = makeExecutableSchema({ typeDefs, resolvers })Suponga la siguiente estructura de directorios:
. ├── a.graphql ├── b.graphql └── c.graphqla.graphql
# import B from "b.graphql" type A { # test 1 first: String second: Float b: B }b.graphql
# import C from 'c.graphql' type B { c: C hello: String! }c.graphql
type C { id: ID! }La carpeta de esquemas debe tener archivos con archivos .graphql o .gql
const path = require('path'); const { loadFilesSync } = require('@graphql-tools/load-files'); const { mergeTypeDefs } = require('@graphql-tools/merge'); const typesArray = loadFilesSync(path.join(__dirname, './schemas')); module.exports = mergeTypeDefs(typesArray, { all: true });Tenga la misma pregunta sobre cómo implementarlo de la manera correcta. De todos modos esto funciona para mí.
import {gql} from 'apollo-server-express' import * as types from './types.graphql' export const typeDefs = gql`${types}`