結論
import { Module } from '@nestjs/common';
import { GraphQLModule } from '@nestjs/graphql';
import { ApolloDriver, ApolloDriverConfig } from '@nestjs/apollo';
import { SampleModule } from './sample/sample.module';
import { ApolloServerPluginLandingPageLocalDefault } from '@apollo/server/plugin/landingPage/default';
@Module({
imports: [
GraphQLModule.forRoot<ApolloDriverConfig>({
driver: ApolloDriver,
autoSchemaFile: true,
playground: false,
plugins: [ApolloServerPluginLandingPageLocalDefault()],
}),
SampleModule,
],
})
export class GraphqlModule {}
playgroundはfalseにして、ApolloServerPluginLandingPageLocalDefaultを使うほうが良さそう
こんなコード
@Module({
imports: [
GraphQLModule.forRoot<ApolloDriverConfig>({
driver: ApolloDriver,
autoSchemaFile: true,
playground: true,
}),
SampleModule,
],
})
export class GraphqlModule {}
https://docs.nestjs.com/graphql/quick-start#graphql-playground
公式ドキュメントを見てもplayground: trueにすればいいよって書いてあるが...
不具合の概要
こんな感じで書いていて、サジェスト選択すると

サジェストで選択したウィンドウが残ってしまう不具合がありました。
そもそもこのPlaygroundそのものがもうすでにメンテされていなさそうなので、多分非推奨になっている

