Size: a a a

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

2021 August 27

λ

λoλdog in GraphQL — русскоговорящее сообщество
Честно
источник

λ

λoλdog in GraphQL — русскоговорящее сообщество
Придётся проверить
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Могу в личку доступ дать.
источник

НЛ

Нежный Лосось... in GraphQL — русскоговорящее сообщество
хелпер этот возвращает FieldPolicy. У вас для products query и products subscription 2 отдельных field policy в кеше. Тут так просто хелпером не отделаться
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Как только нажимаю треугольник сразу прилетают все данные. В данном случае первые 10 записей, потому что такие условия пагинации.
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
При этом я в БД новых записей не создаю, не удаляю и не редактирую.
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
То есть он срабатывает в первый раз как квери, а потом уже при изменении чего-либо в БД, присылает новый список.
источник

НЛ

Нежный Лосось... in GraphQL — русскоговорящее сообщество
наверное можно этот хелпер или, по крайней мере, часть его код зареюзать в updateQuery
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Я раньше работал с Prisma, там подписки по другому работали.
источник

λ

λoλdog in GraphQL — русскоговорящее сообщество
Ну залупа, можно завести им баг на это)
источник

λ

λoλdog in GraphQL — русскоговорящее сообщество
Это очень странное поведение правда
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Это не баг, это фича. )
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Это как раз-таки очень хорошее поведение.
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Если пагинации нет, то никакие патчи накладывать не нужно.
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Тебе уже новый вычисленный список с бэка прилетает.
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Они и пишут, что это Live Queries.
источник

НЛ

Нежный Лосось... in GraphQL — русскоговорящее сообщество
Поведение хорошее, но не для длинных списков и пагинации)
источник

y

yel' in GraphQL — русскоговорящее сообщество
ничего не лучше и не хуже. У обоих вариантов свои плюсы и минусы. Если компонент где используется subscribeToMore размаунтится, то подписка и её колбэки останутся. Но если компонент снова смаунтится, то subscribeMore снова сработает и оформится ещё одна подписка. Это нужно учитывать и на крайняк можно через реф контролировать.

subscribeToMore в отличие от useSubscription обогощает кэш квери к которой относится. В случае с useSubscription это нужно будет делать вручную через writeQuery, либо writeFragment. С другой стороны, useSubscription не привязана не к какой квере и её можно без проблем запихнуть в отдельный компонент красиво.
источник

y

yel' in GraphQL — русскоговорящее сообщество
у меня было такое что я сначала использовал subscribeToMore в кастомном хуке рядом с кверей. Потом нужно было сделать подписку глобальной на всё приложение, я тогда её сделал через useSubscription и запухнул в один из рут компонентов. В итоге мне так даже больше понравилось.
источник
2021 August 28

OB

Oleg Berdyshev in GraphQL — русскоговорящее сообщество
Спасибо @synonymouse . Можете подсказать если я использую useMutation 1)  что происходит с подпиской если я иду на другую page , то есть компонент размаунтился. Я видел в Network что, что-то остается и продолжает получать месседжи  от Hasura. Не могу понять что это. 2) где лучше делать подписку? Как можно ближе (ниже) к компоненту или выше? 3) для чего нужны writeQuery и writeFragment?
Спасибо.
источник