Wenn GraphQLID anstelle von GraphQLInt verwendet werden soll?

Es ist nicht klar, wann @ verwendet werden soGraphQLID Anstatt vonGraphQLInt.

Betrachten Sie das folgende Schema:

type User {
  id: Int!
  firstName: String!
  lastName: String!
}

type Query {
  user (id: ID!): User
}

Im Falle vonQuery.user, es scheint keinen Unterschied zu machen, ob man @ benutGraphQLID oderGraphQLInt.

Im Falle vonUser.id mitGraphQLID wandelt die Eingabe in einen String um. @ VerwendGraphQLInt stellt sicher, dass die Eingabe eine Ganzzahl ist.

Dadurch wird das Abfrage- und Typensystem inkonsistent.

Das graphql-js spec sagt einfach:

A GraphQLScalarType das steht für eine ID.

Ist dies ein Implementierungsdetail (z. B. sollte der GraphQL-ClientGraphQLID auf eine ganze Zahl, wenn dies möglich ist), oder wird erwartet, dassID ist immer ein String in graphql?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage