The names are the API talking back to you, so listen to them
find
がついているフィールドとついていないフィールドが混在しているadd
と create
が使用されているtype Query {
products(ids: [ID!]): [Product!]!
findPosts(ids: [ID!]): [Post!]!
}
type Mutation {
addProduct(input: AddProductInput): AddProductPayload
createPost(input: CreatePostInput): CreatePostPayload
}
Mutation.publishPost
を定義しているのであれば Mutation.unpublishPost
も定義されるべきUser
や Event
# creditCardというprefixが複数のフィールドで定義されている
type Payment {
creditCardNumber: CreditCardNumber
creditCardExpiration: CreditCardExpiration
giftCardCode: String
}
# creditCardXxxを別のtypeに切り出した場合 (p.39)
type Payment {
creditCard: CreditCard
giftCardCode: String
}
type CreditCard {
number: CreditCardNumber!
expiration: CreditCardExpiration!
}
Payment
はフィールドが全てnullableだが、これについては実装でチェックしようということなのだろうか
union Payment = CreditCard | GiftCardCode
type CreditCard {
number: CreditCardNumber!
expiration: CreditCardExpiration!
}
type GiftCardCode {
code: String!
}