Quando usar o GraphQLID em vez do GraphQLInt?
Não está claro quando usarGraphQLID
ao invés deGraphQLInt
.
Considere o seguinte esquema:
type User {
id: Int!
firstName: String!
lastName: String!
}
type Query {
user (id: ID!): User
}
No caso deQuery.user
, parece não fazer diferença se usarGraphQLID
ouGraphQLInt
.
No caso deUser.id
, usandoGraphQLID
converterá a entrada em string. UsandoGraphQLInt
garantirá que a entrada seja um número inteiro.
Isso torna a consulta e o tipo de sistema inconsistentes.
ographql-js especificação simplesmente diz:
A GraphQLScalarType
que representa um ID.
Isso é um detalhe de implementação (por exemplo, o cliente GraphQL deve lançarGraphQLID
para um número inteiro quando possível), ou é esperado queID
é sempre uma string emgraphql?