与react-apollo的自定义输入类型
问题描述:
我试图执行需要客户端上的自定义输入类型的变异查询。目前它看起来像这样:与react-apollo的自定义输入类型
import { graphql } from 'react-apollo';
...
const graphQuery = graphql(gql`
input UserSignUpInput {
firstName: String!,
lastName: String!,
email: String!,
password: String!
}
mutation userSignUp($input: UserSignUpInput!) {
createUserByEmail(input: $input) {
authToken
}
}`, {
props: ({ mutate }) => ({
signup: (firstName, lastName, email, password) =>
mutate({ variables: { input: { firstName, lastName, email, password } } }),
}),
});
...
但是我收到错误,我不允许在查询中定义输入类型。我的问题是:如何定义这些复杂的输入类型?它似乎并不像我能够提供一个架构,以ApolloClient
..
答
在客户侧正确的语法就是:
gql`
mutation userSignUp($input: UserSignUpInput!) {
createUserByEmail(input: $input) {
authToken
}
}
`
作为输入UserSignUpInput
在服务器上定义,一切都很顺利。
服务器
input UserSignUpInput {
firstName: String!,
lastName: String!,
email: String!,
password: String!
}