Как мне обойти эту ошибку? Для этой конкретной схемы мне не нужны никакие запросы (все они мутации). Я не могу передать null, и если я передам пустой GraphQLObjectType, он выдает ошибку:
Type Query must define one or more fields.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Если вы используете graphql-инструменты (возможно, и другие инструменты SDL), вы можете указать пустой тип (например, Query), используя:
type Query
Вместо
type Query {}
Если вы строите схему программно, вам придется добавить фиктивный запрос, например:
new GraphQLObjectType({
name: 'Query',
fields: {
_dummy: { type: graphql.GraphQLString }
}
})
Что является программным эквивалентом SDL:
type Query {
_dummy: String
}
@A.Lau Можно смело пометить это как принятое. Если вы отметите спец., в нем конкретно указано, что «должен быть указан корневой тип операции запроса, и он должен быть типом объекта». Необязательными являются только корневые операции мутации и подписки.
Если вы используете Node.js Express -
Ваша схема должна иметь как корневой запрос, так и корневую мутацию, хотя у вас нет никаких преобразователей запросов, но вам все же необходимо определить корневой запрос.
Например. -
type RootQuery {
hello: String!
}
schema {
query: RootQuery
mutation: RootMutation
}
как-то странно, как вам нужно указать Query, хотя вам это не нужно. Я отмечу это как ответ после того, как дам ему еще некоторое время.