传递参数时 GraphQL 语法错误
GraphQL Syntax Error while passing parameters
当我尝试传递此查询时,我在第一行收到语法错误,即使我使用的是具有相同语法的变体:
GraphQLError: Syntax Error: Expected Name, found }
interface WhereInput {
email_contains: String;
}
export const LoadUsersQuery = gql`
query usersList($where: WhereInput) {
users(where: $where}) {
nodes {
email
firstName
}
totalCount
}
}
usersList
这个词是自定义的。
这是 playground 上的原始查询:
query {
users(where: {email_contains: "B"}) {
nodes {
email
firstName
}
totalCount
}
}
我是这样称呼它的:
const [searchItem, setSearchItem] = useState('');
const [loadUsers, { loading, data }] = useLazyQuery(LoadUsersQuery);
return (
<div>
<StyledSearchBar
value={searchItem}
onChange={value => {
setSearchItem(value);
}}
onRequestSearch={() => loadUsers({
variables: {
where: {email_contains: searchItem}
}
})}
/>
</div>
);
语法错误正确(应该指出问题的确切位置)- 那里有一个杂散的 }
:
users(where: $where}) {
# ^
当我尝试传递此查询时,我在第一行收到语法错误,即使我使用的是具有相同语法的变体:
GraphQLError: Syntax Error: Expected Name, found }
interface WhereInput {
email_contains: String;
}
export const LoadUsersQuery = gql`
query usersList($where: WhereInput) {
users(where: $where}) {
nodes {
email
firstName
}
totalCount
}
}
usersList
这个词是自定义的。
这是 playground 上的原始查询:
query {
users(where: {email_contains: "B"}) {
nodes {
email
firstName
}
totalCount
}
}
我是这样称呼它的:
const [searchItem, setSearchItem] = useState('');
const [loadUsers, { loading, data }] = useLazyQuery(LoadUsersQuery);
return (
<div>
<StyledSearchBar
value={searchItem}
onChange={value => {
setSearchItem(value);
}}
onRequestSearch={() => loadUsers({
variables: {
where: {email_contains: searchItem}
}
})}
/>
</div>
);
语法错误正确(应该指出问题的确切位置)- 那里有一个杂散的 }
:
users(where: $where}) {
# ^