Size: a a a

GraphQL — русскоговорящее сообщество

2019 November 04

NT

Nikita Tkachuk in GraphQL — русскоговорящее сообщество
ребят, напомните плиз что делать если квери возвращает ошибку авторизации -> вызываю мутацию авторизации -> рефетчу квери -> компоненты нифига не ререндерятся до перезагрузки страницы
источник

EK

Eugene Korobkov in GraphQL — русскоговорящее сообщество
Nikita Tkachuk
ребят, напомните плиз что делать если квери возвращает ошибку авторизации -> вызываю мутацию авторизации -> рефетчу квери -> компоненты нифига не ререндерятся до перезагрузки страницы
resetStore не вариант?
источник

NT

Nikita Tkachuk in GraphQL — русскоговорящее сообщество
Eugene Korobkov
resetStore не вариант?
не помогает почемуто
источник

EK

Eugene Korobkov in GraphQL — русскоговорящее сообщество
Nikita Tkachuk
не помогает почемуто
The easiest way to ensure that the UI and store state reflects the current user's permissions is to call client.resetStore() after your login or logout process has completed. This will cause the store to be cleared and all active queries to be refetched. If you just want the store to be cleared and don't want to refetch active queries, use client.clearStore() instead. Another option is to reload the page, which will have a similar effect.

Мб порядок не тот?
источник

NT

Nikita Tkachuk in GraphQL — русскоговорящее сообщество
Eugene Korobkov
The easiest way to ensure that the UI and store state reflects the current user's permissions is to call client.resetStore() after your login or logout process has completed. This will cause the store to be cleared and all active queries to be refetched. If you just want the store to be cleared and don't want to refetch active queries, use client.clearStore() instead. Another option is to reload the page, which will have a similar effect.

Мб порядок не тот?
спасибо, тоже находил это
сейчас подумываю что с react-apollo-hooks что-то не то, раньше без хуков resetStore помогал
источник

EK

Eugene Korobkov in GraphQL — русскоговорящее сообщество
Nikita Tkachuk
спасибо, тоже находил это
сейчас подумываю что с react-apollo-hooks что-то не то, раньше без хуков resetStore помогал
кинь кусок кода, мб что-нить в голову прийдет
источник

NT

Nikita Tkachuk in GraphQL — русскоговорящее сообщество
Eugene Korobkov
кинь кусок кода, мб что-нить в голову прийдет
было проще разобраться чем нужный кусок кода выбрать )
проблема рили в хуках ( с хоком graphql норм
источник

NT

Nikita Tkachuk in GraphQL — русскоговорящее сообщество
заменил react-apollo-hooks на @apollo/react-hooks и всё работает )
источник

EK

Eugene Korobkov in GraphQL — русскоговорящее сообщество
Nikita Tkachuk
заменил react-apollo-hooks на @apollo/react-hooks и всё работает )
А чего не на @apollo/client? (apollo 3 beta required вроде как)
источник

NT

Nikita Tkachuk in GraphQL — русскоговорящее сообщество
Eugene Korobkov
А чего не на @apollo/client? (apollo 3 beta required вроде как)
а вот хз ) спасибо, разбирусь )
источник

VM

Vasily Malykhin in GraphQL — русскоговорящее сообщество
Ребята, всем привет! Есть вопрос по мокам.
Мы используем Apollo и Schema First Development подход, поэтому часто резолверы еще не готовы для некоторых кверей.
На данный момент мы локально поднимаем ApolloServer, с теми же typeDefs, что и настоящий бэк, но мокаем резолверы так как нам нужно. Проблема в том, что сложно следить за этими моками и поддерживать их в актуальном состоянии.
В идеале хочется использовать настоящий бэкэнд настолько насколько возможно и мокать только некоторые запросы, которые еще не реализованы на бэке.

В доках нашел два подхода: один похож на наш, второй - использовать client директиву.

Кто-нибудь сталкивался с такой проблемой? Кто может что посоветовать?
источник

EM

Eugene M in GraphQL — русскоговорящее сообщество
могу из личного опита сказать, что ничего сташного в поддержке моков нет, наоборот даже, куда удобнее локальная разработка и тестирование. может вы слишком глубоко мокаете?
источник
2019 November 05

RK

Ruslan Krivoshein in GraphQL — русскоговорящее сообщество
Подскажите, пожалуйста, как пользоваться способом из последнего абзаца? Получаю в лицо
Field "protected" of type "ProtectedUnion" must have a sub selection,
а так как пока только вникаю, то не догоняю, что именно подзапрашивать...
источник

EK

Eugene Korobkov in GraphQL — русскоговорящее сообщество
Ruslan Krivoshein
Подскажите, пожалуйста, как пользоваться способом из последнего абзаца? Получаю в лицо
Field "protected" of type "ProtectedUnion" must have a sub selection,
а так как пока только вникаю, то не догоняю, что именно подзапрашивать...
Для начала поле message можно запросить.

protected {
 message
}

Если поле message отсутствует у AuthInfoField, то попробуйте так

protected {
 ... on MessageField {
   message
 }
}
источник

EK

Eugene Korobkov in GraphQL — русскоговорящее сообщество
Мутация protected возвращает Union тип (MessageField, AuthInfoField)
источник

BS

Bogdan Shelomanov in GraphQL — русскоговорящее сообщество
всем привет, сейчас можно переехать на хуки аполо безболезненно? иенно что бы не сразу все, а по частям? в момент релиза, нужно нельзя было, подскажет кто?
источник

NT

Nikita Tkachuk in GraphQL — русскоговорящее сообщество
Bogdan Shelomanov
всем привет, сейчас можно переехать на хуки аполо безболезненно? иенно что бы не сразу все, а по частям? в момент релиза, нужно нельзя было, подскажет кто?
вроде можно, у меня сейчас в проекте и хоки и хуки, просто два провайдера подключил, когды выпилю все хоки - оставлю один провайдер
источник

BS

Bogdan Shelomanov in GraphQL — русскоговорящее сообщество
так вот сейчас насколько я понял, второй провайдер не нужен
источник

NT

Nikita Tkachuk in GraphQL — русскоговорящее сообщество
я сначала использовал react-apollo-hooks, там нужно было два провайдера, сейчас мб так, да)
источник

BS

Bogdan Shelomanov in GraphQL — русскоговорящее сообщество
да сейчас они в коробке, но проще не стало, я не могу переехать, милион ошибок вылезло
источник