Size: a a a

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

2019 December 02

A

Artyom in GraphQL — русскоговорящее сообщество
в примере выше есть строка pageProps = await PageComponent.getInitialProps(ctx)
источник

A

Artyom in GraphQL — русскоговорящее сообщество
и она идет перед await getDataFromTree(...
источник

A

Artyom in GraphQL — русскоговорящее сообщество
то есть запрос данных идет перед тем, как вызывется метод аполо getDataFromTree
источник

A

Artyom in GraphQL — русскоговорящее сообщество
при такой логике и у меня все работает
источник

A

Artyom in GraphQL — русскоговорящее сообщество
короче аполо сам не справляется
источник

A

Artyom in GraphQL — русскоговорящее сообщество
костыль
источник

A

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

A

Artyom in GraphQL — русскоговорящее сообщество
и похоже это работа next
источник

A

Artyom in GraphQL — русскоговорящее сообщество
я не юзал эту либу и не изучал, но как заставить реакт без нее делать асинхронный рендеринг?
источник

A

Artyom in GraphQL — русскоговорящее сообщество
ведь это нужно запросить данные не в render методе или не в функциональном компоненте через хуки, а еще до рендера
источник

A

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

A

Artyom in GraphQL — русскоговорящее сообщество
и только после этого произвести рендер
источник

L

LogicalStack in GraphQL — русскоговорящее сообщество
Artyom
ведь это нужно запросить данные не в render методе или не в функциональном компоненте через хуки, а еще до рендера
вообще логично, что данные надо до рендера запрашивать)
источник

A

Artyom in GraphQL — русскоговорящее сообщество
логично, но как это сделать в реакт?
источник

A

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

A

Artyom in GraphQL — русскоговорящее сообщество
это значит нужно реализовать асинхронный рендер в react
источник

A

Artyom in GraphQL — русскоговорящее сообщество
а еще getInitialProps не может использоваться в дочерних компонентах. Только на страницах
источник

A

Artyom in GraphQL — русскоговорящее сообщество
все  я убедился что я был прав и верно все понимаю и из коробки функция по сбору данных из промисов в  apollo не реализована
источник

P@

Pavel @nodkz in GraphQL — русскоговорящее сообщество
Artyom
я думал что getDataFromTree как глобальный промис, который дожидается всех запросов данных, но нет! это работает по другому и данные надо запрашивать до рендера...... и вот тут затык
Ну он так под капотом и работает, дожидается пока все запросы выполнятся.

Если у тебя в коде apollo-хуки, то import { getDataFromTree } from ‘@apollo/react-ssr’ (https://github.com/apollographql/react-apollo/blob/master/packages/ssr/src/getDataFromTree.ts)

Если у тебя аполло компоненты, то import { getDataFromTree } from 'react-apollo’;

Ну и совсем экзотика если у тебя Relay https://github.com/relay-tools/react-relay-network-modern-ssr#server
источник

MS

Misha Shandra in GraphQL — русскоговорящее сообщество
Всем хай, при создании компонента для него должны применяться стандартные настройки, пользователь может сохраниь определённые настройки для одного компонента и/или сохранить для себя один темплейт и тогда все компоненты без собственных конфигураций должны принимать темплейтные настройки (как бы заменять стандартные настр. для всех, на свои). Я создаю для этого 3 таблицы: стандартные_настройки (задаёт админ, только одно поле), темплейтные(сам юзер, только для себя, только одно поле), и просто_настроки(для каждого компонента отдельно). Нормальный ли подход, а то я тут напридумывал а выглядит как лажа ????
источник