1

Prisma データベースを使用apollo-server-expressして GraphQL サーバーを実行しています。私の主なスキーマを以下に示します。これは、他のファイルgraphql-tag/loaderをインポートするために使用するだけです。.graphqlサーバーをローカルで実行しようとすると、次のメッセージが表示されます。

エラー: モジュールのビルドに失敗しました (./node_modules/graphql-tag/loader.js から): GraphQLError: 構文エラー: 予期しない

明らかに、GraphQL はいくつかの型などを宣言したいと考えています。これを回避して、他のファイルをインポートするだけschema/schema.graphqlのファイルを持つことができる方法はありますか?.graphql.graphql

スキーマ/schema.graphql:

#import '../generated/prisma.graphql'
#import './secondSchema.graphql'

index.js:

import http from 'http';
import express from 'express';
import { ApolloServer } from 'apollo-server-express';
import resolvers from './schema/resolvers';
import schema from './schema/schema.graphql';
import prisma from './prisma';

const server = new ApolloServer({
  context: {
    prisma,
  },
  resolvers,
  typeDefs: schema,
});

const app = express();
server.applyMiddleware({ app });

const PORT = 5000;

const httpServer = http.createServer(app);
server.installSubscriptionHandlers(httpServer);

httpServer.listen(PORT, () => {
  console.log(`Server ready at http://localhost:${PORT}${server.graphqlPath}`);
  console.log(`Subscriptions ready at ws://localhost:${PORT}${server.subscriptionsPath}`);
});

if (module.hot) {
  module.hot.accept();
  module.hot.dispose(() => server.stop());
}
4

1 に答える 1