Когда я пытаюсь передать этот запрос, я получаю синтаксическую ошибку в первой строке, хотя я использую мутацию с тем же синтаксисом, который работает:
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
определяется самостоятельно.
Этот оригинальный запрос выглядит на игровой площадке:
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>
);