Size: a a a

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

2021 August 30

𝘂

𝘂𝘅𝗻𝗮𝗺𝗲... in GraphQL — русскоговорящее сообщество
ну, можно в запрос флаг добавить что-то типа
getItems(fromEnd: Boolean): [String]
но опять же, этот флаг должен обработать бэк, и соответственно отдать или 10 элементов с начала или 10 с конца
источник

АД

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

P@

Pavel @nodkz in GraphQL — русскоговорящее сообщество
Вспомните MVC парадигму, когда Controller согласно роутинга дергал данные и потом передавал их во View для отрисовки шаблона.

Большинство SPA приложений смешивают View и Controller, из-за чего и приходится два раза проходить по дереву.

Но если упороться и это действительно нужно, то можно попробовать распилить получения данных по роутам без вызова рендера реакта. Т.е. вместо вызова getDataFromTree, вызвать свою логику, которая сможет определить какие Graphql запросы необходимо дернуть и положить их в аполло кэш.
источник

I

Ilya in GraphQL — русскоговорящее сообщество
Да, я такое и делаю щас, у меня контроллеры, которые на разный роут агрегируют определенные данные (там описаны фактически наборы разных квери - а реализация - тупо http-вызовы /graphql с определенным body)

Но в этой парадигме я как будто недоиспользую преимущества graphql, сейчас только кодогенерю типизацию моделей, ну и получаю минимально необходимый набор полей

То есть вроде уже круче чем обычный rest, но наверняка можно было что-то интереснее намутить

Про ручную загрузку apollo cache - звучит интересно, надо подумать)
источник

I

Ilya in GraphQL — русскоговорящее сообщество
а по опыту - часто с apollo делают mvc-like схемы?)

мы просто у себя стараемся в целом отделять слой взаимодействия с бэком, чтобы удобнее мониторить конкретные запросы и ограничивать нагрузку ноду и на бэк

во фронтовой графкуэль тусовке на вид довольно бедный тулинг для этого
источник
2021 August 31

P@

Pavel @nodkz in GraphQL — русскоговорящее сообщество
ой боже упаси

все стараются делать просто, как это возможно

а оверинженирят только если есть требования

сам подход ректа странно ложиться на MVC, точнее по другому там все. И колхозить не хочется.

Вообще рекомендую на 18 реакт глянуть с suspense и новым методом для ssr. Там вполне годно они реализую логику распиливания рендеринга приложения. Правда не уверен, что аполловский getTreeData адекватно пропускает обработку suspense.
источник

AK

Alexandr K in GraphQL — русскоговорящее сообщество
Ребят, подскажите плз, есть ли дока или  обучающие видео по Apollo на русском?
источник

𝘂

𝘂𝘅𝗻𝗮𝗺𝗲... in GraphQL — русскоговорящее сообщество
Не знаю, но гуглопереводчик вполне нормально переводить официальную доку
источник

AK

Alexandr K in GraphQL — русскоговорящее сообщество
Да так и есть, дошел до refetching after update в разделе mutation  и как-то совсем туго идёт.думал может есть что-то полегче
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Там основная инфа, после прочтения желательно начать что-то писать, тогда ньюансы начнут доходить
источник

AK

Alexandr K in GraphQL — русскоговорящее сообщество
спасибо, а то чувствую себя тупым)
источник
2021 September 02

y

yel' in GraphQL — русскоговорящее сообщество
сори, но опять к теме дисконектов subscriptions-transport-ws, который аполо использует для сокета.

Он постоянно дисконектится у меня через какое-то время простоя, достаточно короткое. И если раньше меня это не парило, происходил рекконект и ок, то сейчас бэк хочет завязать логику на коннект/дисконнект, чтобы отслеживать онлайн ли пользователь.
источник

y

yel' in GraphQL — русскоговорящее сообщество
у всех коннект так постоянно отваливается?
источник

ОЛ

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

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
А онлайн завязывать только на коннекте
источник

y

yel' in GraphQL — русскоговорящее сообщество
я тут прочитал протокол subscriptions-transport-ws и мне по идее должны приходить keep alive сообщения, но они мне не приходят. Может поэтому отваливается?
источник

y

yel' in GraphQL — русскоговорящее сообщество
есть ещё чатик такой openland.com, тоже на аполло походу и там ничего не отваливается в простое. Из особенностей, у них там сделан ping-pong для отслеживания коннекта как я понимаю.
источник

F

Feduch in GraphQL — русскоговорящее сообщество
Всем привет!

Подскажите, кто то делал древовидное меню, запросом получить все дерево и его потом рендерить на фронте? При этом в дереве каждую секунду может меняться состояние элемента. В дереве при этом может быть около 12000 элементов.
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Возможно в конфиге опять что-то :)
источник

ОЛ

Олег Линьков... in GraphQL — русскоговорящее сообщество
Live Queries вам помогут в этом, ререндер на себя аполло возьмет, а логику построения от вас. бек тоже должен поддерживать живые запросы
источник