Size: a a a

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

2019 October 16

YV

Yana V in GraphQL — русскоговорящее сообщество
А зачем тебе одинаковые сущности? Может стоило сделать один тип для всех, а у него уже сделать скалярный тип в виде перечисления там как раз будут перечислены названия: floor, room и т.д.  и от этого уже плясать? Ну если они совсем не отличаются...
источник

BS

Bogdan Shelomanov in GraphQL — русскоговорящее сообщество
Вячеслав Роговой
или nexus если хотите получить Query в ответе mutation )
в чем профит? можно в кратце? у нас ничего вроде такого нету
источник

YV

Yana V in GraphQL — русскоговорящее сообщество
Nikita Grishin
тогда только выносить повторяющиеся поля в кастомный тип, что-то вроде
type Project {
  id: ID!
  fields: CommonFields
}
+
Можно в кастомном (родительском грубо говоря) описать повторяющиеся для всех поля, а в дополнительном (дочернем) уже уникальные.
источник

ВР

Вячеслав Роговой in GraphQL — русскоговорящее сообщество
Bogdan Shelomanov
в чем профит? можно в кратце? у нас ничего вроде такого нету
> Это позволит клиентам за один раунд-трип не только вызвать мутацию, но и получить вагон данных для обновления своего приложения. К примеру, мы лайкаем какую-то статью likePost и тут же в ответе через поле query можем запросить любые данные которые доступны нам в АПИ (в нашем примере список последних статей с активностью lastActivePosts).
> Если мутация возвращает query, то для фронтендеров открывается дичайший профит – возможность сразу запросить любые данные для своего приложения после какой-нибудь страшной мутации за один http-запрос. А если на клиенте используются Relay или ApolloClient с именованными фрагментами, то обновить половину приложения становиться проще простого. Не надо писать второй запрос на получение данных и как-то пробрасывать их в нужное место. Всё обновиться магическим образом само, просто надо написать такую мутацию с существующими фрагментами из вашего приложения
источник

BS

Bogdan Shelomanov in GraphQL — русскоговорящее сообщество
Вячеслав Роговой
> Это позволит клиентам за один раунд-трип не только вызвать мутацию, но и получить вагон данных для обновления своего приложения. К примеру, мы лайкаем какую-то статью likePost и тут же в ответе через поле query можем запросить любые данные которые доступны нам в АПИ (в нашем примере список последних статей с активностью lastActivePosts).
> Если мутация возвращает query, то для фронтендеров открывается дичайший профит – возможность сразу запросить любые данные для своего приложения после какой-нибудь страшной мутации за один http-запрос. А если на клиенте используются Relay или ApolloClient с именованными фрагментами, то обновить половину приложения становиться проще простого. Не надо писать второй запрос на получение данных и как-то пробрасывать их в нужное место. Всё обновиться магическим образом само, просто надо написать такую мутацию с существующими фрагментами из вашего приложения
чем это от рефеч отлично или от записи в кеш?
источник

NG

Nikita Grishin in GraphQL — русскоговорящее сообщество
Не кеш, просто одним запросом делаешь мутацию и подкладываешь абсолютно любую query, и все это за один запрос
источник

NG

Nikita Grishin in GraphQL — русскоговорящее сообщество
рефетч - это дополнительный запрос
источник

BS

Bogdan Shelomanov in GraphQL — русскоговорящее сообщество
Nikita Grishin
Не кеш, просто одним запросом делаешь мутацию и подкладываешь абсолютно любую query, и все это за один запрос
как это подкладываешь кверю? тоесть он все равно выполнит тот запрос, который передал?
источник

YV

Yana V in GraphQL — русскоговорящее сообщество
Вячеслав Роговой
> Это позволит клиентам за один раунд-трип не только вызвать мутацию, но и получить вагон данных для обновления своего приложения. К примеру, мы лайкаем какую-то статью likePost и тут же в ответе через поле query можем запросить любые данные которые доступны нам в АПИ (в нашем примере список последних статей с активностью lastActivePosts).
> Если мутация возвращает query, то для фронтендеров открывается дичайший профит – возможность сразу запросить любые данные для своего приложения после какой-нибудь страшной мутации за один http-запрос. А если на клиенте используются Relay или ApolloClient с именованными фрагментами, то обновить половину приложения становиться проще простого. Не надо писать второй запрос на получение данных и как-то пробрасывать их в нужное место. Всё обновиться магическим образом само, просто надо написать такую мутацию с существующими фрагментами из вашего приложения
Блин, ребят, на самом деле плюс GraphQL как раз в том чтобы быстро и просто получать то что надо, и не тянуть кучу лишней инфы. Можно конечно, но зачем? Если для фронтендеров нужно что-то конкретное, можно это конкретное и запросить, без лишнего вагона инфы.  Принцип YAGNI не забываем.
источник

NG

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

BS

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

P@

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

BS

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

YV

Yana V in GraphQL — русскоговорящее сообщество
Pavel @nodkz
И было бы круто иметь возможность запросить такой ответ, который именно тебе нужен, а не то что придумал бэкендер
Ну так бэк и реализует api на абсолютно всё что есть, а фронт запрашивает конкретно то, что ему нужно.  Зачем на конкретный запрос присылать избыточную информацию?
источник

P@

Pavel @nodkz in GraphQL — русскоговорящее сообщество
Yana V
Ну так бэк и реализует api на абсолютно всё что есть, а фронт запрашивает конкретно то, что ему нужно.  Зачем на конкретный запрос присылать избыточную информацию?
Не избыточную, а ту что запросил клиент
источник
2019 October 17

ДС

Дмитрий Середа in GraphQL — русскоговорящее сообщество
Всем привет,
мне нужен GraphQL Client для Nodejs ( по факту для Apollo Server ), чтобы делать запросы на другие сервера. При этом нужно, чтобы этот GraphQL Client умел subscription. graphql-request выглядит как искомое, но, там нет subscription.
Кто что ещё может посоветовать?
источник

MS

Mike Shalin in GraphQL — русскоговорящее сообщество
Apollo server из коробки подписки умеет
источник

NG

Nikita Grishin in GraphQL — русскоговорящее сообщество
Может посмотреть в сторону Apollo Federation?
источник

MS

Mike Shalin in GraphQL — русскоговорящее сообщество
Прочитай в оф доке по apollo
источник

U

Uxname in GraphQL — русскоговорящее сообщество
Mike Shalin
Apollo server из коробки подписки умеет
он ищет клиент, а не сервер
источник