Size: a a a

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

2020 May 04

MZ

Maks Ze in GraphQL — русскоговорящее сообщество
похоже это ангулярова приблуда)
источник

Sergey Фrolov in GraphQL — русскоговорящее сообщество
Maks Ze
ткни носом про что ты говорить, нагуглил только строчку в конфиге
источник

Sergey Фrolov in GraphQL — русскоговорящее сообщество
У Angular просто прослойка к ней, там нет никакой магии. Это все в Core
источник

Sergey Фrolov in GraphQL — русскоговорящее сообщество
Выше было для Vue небольшое обсуждение, там тоже есть
источник

Sergey Фrolov in GraphQL — русскоговорящее сообщество
В react похоже не принято подписываться на изменнения данных, а всегда просто делать refetch в ручную, что сильно повышает связность в приложении и добавляет сложностей. Но я думаю и там можно найти как подписаться на такое.
источник

S

Special K in GraphQL — русскоговорящее сообщество
Sergey Фrolov
А зачем думать об этом? Ну если за это платят, то ок, но мне лениво делать это раз за разом. Пусть этим занимается отдельный клиент, который и так под это заточен и делает это с данными с бека.
Ещё раз, конфигурация и схема поведения UI это не "данные". Данными они становятся только в виде дампа, отправленного на сервер, но для самого клиента это часть логики, а не маппинг данных из базы к представлению. Зачем заставлять UI слать внутри себя запросы к самому себе, да ещё и на языке, который придуман не для событийной модели, а для сетевого взаимодействия? GraphQL для данных - круто, действительно революция, и автоматическое кэширование данных тоже здорово. Но само приложение в отрыве от данных тут не причём, интерфейсом пусть занимается какой-нибудь легковесный effector / reatom, а на сервер максимум дамп настроек пусть уходит.
источник

Sergey Фrolov in GraphQL — русскоговорящее сообщество
Special K
Ещё раз, конфигурация и схема поведения UI это не "данные". Данными они становятся только в виде дампа, отправленного на сервер, но для самого клиента это часть логики, а не маппинг данных из базы к представлению. Зачем заставлять UI слать внутри себя запросы к самому себе, да ещё и на языке, который придуман не для событийной модели, а для сетевого взаимодействия? GraphQL для данных - круто, действительно революция, и автоматическое кэширование данных тоже здорово. Но само приложение в отрыве от данных тут не причём, интерфейсом пусть занимается какой-нибудь легковесный effector / reatom, а на сервер максимум дамп настроек пусть уходит.
Почему это не данные? Есть какие-то объективные причины не ситать это данными?
Я скорее представляю данными все, что может прийти в компонент и изменить его состояние/отображение. Да, эти данные могут быть разными, что не исключает необходимости работы.с ними в одном потоке. А уж где и как их хранить, обрабатывать, отправлять ли их на сервер для синхронизации и когда это делать – будет решаться где-то в другом месте. Это вопрос каждый разработчик решает сам в силу своего опыта и навыков. Но компонент всегда имеет единый интерфейс описания нужных ему данных (fragment) и ввод/вывод для stateful (query/mutation).
Я, например, не хочу хранить 2 раза хоть какие-то данные (кеш+менеджер), не вижу никакого выигрыша в этом (ни в скорости, ни в удобстве) и рад, что у меня есть возможность сделать единый интерфейс для работы с ними. Да, я сам намучался с кешем в версии 2, это реально набор костылей без каких-то особых плсов, но сейчас уже гуд и я спокойно могу сосредоточится на сложности самого интерфейса, не думая про уровень данных.
Про effector / reatom я лучше промолчу – это не тема этого обсуждения.
И да, дамп нужно не только отправлять, а еще построить кучу всего вокруг, если с этим дальше как-то работать.
источник

Sergey Фrolov in GraphQL — русскоговорящее сообщество
А так как сейчас почти во всех приложениях – есть модель данных сервера (REST/Swagger/GraphQL), есть модель данных клиента (стор) – и отдельный слой для их связывания, который далек от совершенства и не представляет собой какое-то более менее универсальное решение – в каждом приложении это свое. Ну и как-то это не очень, если проект растет и развивается, а не написан раз и на всегда.
источник

D

Denis in GraphQL — русскоговорящее сообщество
с прошлогоднего react amsterdam)
источник

D

Denis in GraphQL — русскоговорящее сообщество
источник

D

Denis in GraphQL — русскоговорящее сообщество
источник

D

Denis in GraphQL — русскоговорящее сообщество
мы например шарим ui state через react-context и его более чем достаточно
источник

D

Denis in GraphQL — русскоговорящее сообщество
а модельки с бэка честно лежат в кэше аполло
источник

S

Special K in GraphQL — русскоговорящее сообщество
Denis
Лайк
источник

А

Андрей in GraphQL — русскоговорящее сообщество
Special K
Лайк
Лайк
источник

S

Special K in GraphQL — русскоговорящее сообщество
Андрей
Лайк
Error: too much recursion
источник

ДН

Давид Надеждин... in GraphQL — русскоговорящее сообщество
Ребят, а если я имею поле типа listOf -> children, у которых есть такоже поле и так до бескончености. Я могу как то получить до последнего?
источник

ДН

Давид Надеждин... in GraphQL — русскоговорящее сообщество
как то элегантно, одни запросом
источник

A1

Art 141 in GraphQL — русскоговорящее сообщество
Давид Надеждин
Ребят, а если я имею поле типа listOf -> children, у которых есть такоже поле и так до бескончености. Я могу как то получить до последнего?
На сколько я помню, одна из идей graphql как раз заключалась чтобы так нельзя было сделать.
источник

ДН

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