KA
Size: a a a
KA
NB
const S3Response = `
ETag: String!
Location: String!
key: String!
Key: String!
Bucket: String!
`;
export const typeDefs = `
input S3ResponseInput {
${S3Response}
}
type S3ResponseOutput {
${S3Response}
}
`
NB
KA
KA
NB
s
<Mutation variables={{ id }} mutation={LIKE}>
{(likeStory, { data }) => (
<button
onClick={e => {
e.stopPropagation()
likeStory()
}}
>
LIKE ({likedBy.length}){JSON.stringify(data)}
</button>
)}
</Mutation>
AB
type User {
id: ID!
age: Int!
maxAge: Int!
}
mutation {
updateUser(data: {
age: maxAge
})
}
AB
s
type User {
id: ID!
age: Int!
maxAge: Int!
}
mutation {
updateUser(data: {
age: maxAge
})
}
KL
type User {
id: ID!
age: Int!
maxAge: Int!
}
input UpdateUserInput {
id: ID!
age: Int
maxAge: Int
}
mutation {
updateUser(data: UpdateUserInput!): User
}
g
p
p
p
NT
g
P@
Prisma
: описываете схему API -> генерируется бэкендgraphql-compose
: описываете бэкенд -> генерируете APIRR
Prisma
: описываете схему API -> генерируется бэкендgraphql-compose
: описываете бэкенд -> генерируете API