I'm using a translator because I'm not good at English.
I am studying graphql and web.
there is no error in the book, but when I tried, there was an error.
I don't know what it means. I need your help.
my git link https://github.com/kimud7/Graphql
Error: Unknown type "Query".
at assertValidSDL (/Users/kud/node-coder/test/node_modules/graphql/validation/validate.js:108:11)
at Object.buildASTSchema (/Users/kud/node-coder/test/node_modules/graphql/utilities/buildASTSchema.js:71:34)
at buildSchemaFromTypeDefinitions (/Users/kud/node-coder/test/dist/schema/src/buildSchemaFromTypeDefinitions.js:8:18)
at Object.makeExecutableSchema (/Users/kud/node-coder/test/dist/schema/src/makeExecutableSchema.js:64:18)
at Object.<anonymous> (/Users/kud/node-coder/test/src/schema.ts:17:17)
at Module._compile (internal/modules/cjs/loader.js:1201:30)
at Module.m._compile (/Users/kud/node-coder/test/node_modules/ts-node/src/index.ts:858:23)
at Module._extensions..js (internal/modules/cjs/loader.js:1221:10)
at Object.require.extensions.<computed> [as .ts] (/Users/kud/node-coder/test/node_modules/ts-node/src/index.ts:861:12)
at Module.load (internal/modules/cjs/loader.js:1050:32)
say hello.ts
const resolvers = {
Query : {
sayHello: () =>`hey hello how are you`
}
};
export default resolvers;
say hello.graphql
type Query{
sayBye:string!
}
schema.ts
import { GraphQLSchema } from "graphql";
import { makeExecutableSchema } from "graphql-tools";
import { fileLoader, mergeResolvers, mergeTypes } from "merge-graphql-schemas";
import path from "path";
const allTypes: GraphQLSchema[] = fileLoader(
path.join(__dirname, "./api/**/*.graphql")
);
const allResolvers: any[] = fileLoader(
path.join(__dirname, "./api/**/*.resolvers.*")
);
const mergedTypes = mergeTypes(allTypes);
const mergedResolvers = mergeResolvers(allResolvers);
const schema = makeExecutableSchema({
typeDefs: mergedTypes,
resolvers: mergedResolvers
});
export default schema;
App.ts
import cors from "cors";
import { GraphQLServer } from "graphql-yoga";
import helmet from "helmet";
import logger from "morgan";
import schema from "./schema";
class App {
public app: GraphQLServer;
constructor() {
this.app = new GraphQLServer({
schema
});
this.middlewares();
}
private middlewares = (): void => {
this.app.express.use(cors());
this.app.express.use(logger("dev"));
this.app.express.use(helmet());
};
}
export default new App().app;