Size: a a a

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

2021 August 27

АР

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

НЛ

Нежный Лосось... in GraphQL — русскоговорящее сообщество
Звучит как-то костыльно.

Но если так надо, то в теории, можно при старте тянуть список как query через useQuery. С subscribeToMore сразу подписаться на subscription для текущей страницы. И при скроле для подгрузки следующей/предыдущей страницы вызывать subscribeToMore. Будет 1 подписка на каждую пачку из 25 элементов. А там уже подклеивать эти пачки в один список через updateQuery, подчищать список, прибивать подписки на пачки которые не попадают в экран.
источник

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
> И при скроле для подгрузки следующей/предыдущей страницы вызывать subscribeToMore

Или fetchMore?
источник

НЛ

Нежный Лосось... in GraphQL — русскоговорящее сообщество
subscribeToMore, у вас же live query subscription
источник

НЛ

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

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Насчёт подклеивания, я тут увидел ещё в Apollo Client завезли Pagination helpers: offsetLimitPagination и relayStylePagination in @apollo/client/utilities.

https://www.apollographql.com/blog/announcement/frontend/announcing-the-release-of-apollo-client-3-0/
источник

АР

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

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Я в Hasura могу включить Relay API.
источник

НЛ

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

НЛ

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

λ

λoλdog in GraphQL — русскоговорящее сообщество
Хасура при подписке выплёвывает сразу все данные чтоль?
источник

λ

λoλdog in GraphQL — русскоговорящее сообщество
Не может такого быть, скорее всего они туда только апдейты шлют
источник

OB

Oleg Berdyshev in GraphQL — русскоговорящее сообщество
Какая разница между useSubscription и subscribeMore? Что лучше использовать. И если компонент где это используется размаунтится, то что будет с подпиской?
источник

АР

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

АР

Алексей Родионов... in GraphQL — русскоговорящее сообщество
Что-то не вижу тут завязки именно на query...

https://github.com/apollographql/apollo-client/blob/master/src/utilities/policies/pagination.ts#L58
источник

АР

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

λ

λoλdog in GraphQL — русскоговорящее сообщество
Не может быть такого
источник

λ

λoλdog in GraphQL — русскоговорящее сообщество
А если в таблице миллион записей
источник

АР

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

λ

λoλdog in GraphQL — русскоговорящее сообщество
Пагинация  по ws? Очень странно звучит
источник