#reactjs #graphql #apollo-client
#reactjs #graphql #apollo-клиент
Вопрос:
В моем приложении react я получаю gql после работы какой-либо функции и пытаюсь вызвать apollo hook следующим образом:
...
let data = {};
if(gqlQuery)
data = useQuery(gqlQuery)
После этого приложение падает с
Error: Should have a queue. This is likely a bug in React. Please file an issue.
3 stack frames were collapsed.
useBaseQuery
src/react/hooks/utils/useBaseQuery.ts:21
18 | Promise.resolve().then(forceUpdate);
19 | }
20 | else {
> 21 | forceUpdate();
| ^ 22 | }
23 | }
24 | });
В чем проблема и как с ней справиться?
ps. Я не могу избежать «if (gqlQuery)»
Комментарии:
1. правило перехватов нарушено, не может быть вызвано условно… используйте опцию пропуска
Ответ №1:
Попробуйте использовать это!
const { loading, error, data } = useQuery(YOUR_QUERY)
Ответ №2:
Я нашел ответ — useLazyQuery