nexus
v1.3.0
Декларативная, ориентированная на код и строго типизированная конструкция схемы GraphQL для TypeScript и JavaScript.
npm install nexus graphql
Обратите внимание, что вы также должны добавить graphql
. Nexus подключается к нему как к одноранговой зависимости.
graphql-js
, и это просто GraphQLSchema
apollo-server
, graphql-middleware
и т. д. import { queryType , stringArg , makeSchema } from 'nexus'
import { GraphQLServer } from 'graphql-yoga'
const Query = queryType ( {
definition ( t ) {
t . string ( 'hello' , {
args : { name : stringArg ( ) } ,
resolve : ( parent , { name } ) => `Hello ${ name || 'World' } !` ,
} )
} ,
} )
const schema = makeSchema ( {
types : [ Query ] ,
outputs : {
schema : __dirname + '/generated/schema.graphql' ,
typegen : __dirname + '/generated/typings.ts' ,
} ,
} )
const server = new GraphQLServer ( {
schema ,
} )
server . start ( ( ) => `Server is running on http://localhost:4000` )
Дополнительные примеры можно найти в каталоге /examples
:
Вы можете найти документацию для Nexus здесь.
Если вы придерживаетесь подхода «сначала SDL» при создании своего сервера GraphQL и хотите посмотреть, как будет выглядеть ваш код, написанный с помощью GraphQL Nexus, вы можете использовать конвертер SDL .