useLazyQuery использует сетевую политику по умолчанию, аналогичную кеш-первой. Итак, я предположил, что ваша функция onClick действительно выполняется, но поскольку возвращаемое значение соответствует значению в кеше, React замечает, что данные не изменяются, так как состояние не обновляется, поскольку возвращаемоеданные - это то, что у них уже есть, без повторного рендеринга, и кажется, что они не изменились. Я предлагаю вам передать в другой сетевой политике что-то вроде
const [sendQuery, { data, loading }] = useLazyQuery(GET_DIRECTION, {
variables: queryVariables,
fetchPolicy: "network-only"
});
This will mean you want the most recent information from your api hence basically no caching.
You might also want to experiment on other option and see which one best suits you
like `cache-and-network:` you can find out a little more here [understanding-apollo-fetch-policies][1]
[1]: https://medium.com/@galen.corey/understanding-apollo-fetch-policies-705b5ad71980