Мне кажется, самая сложная часть пути Apollo / GraphQl - это выбор шаблонов, а не изучение синтаксиса.
Переместив весь магазин приложений из Redux в кэш Apollo, я через несколько дней все еще борюсь с лучшимспособ взаимодействия компонентов и общего доступа к хранилищу Apollo.
Я мог бы написать страницы о различных реализациях, но вопросы остаются, поскольку я не нашел ни статей, ни примеров кода, и форумы об этом молчат - какдругие делают это?
Чтобы добавить некоторых к обсуждению, у меня есть только одно состояние React в компоненте верхнего уровня (родительском): {dispatch: (... dispatch function ...), actionType, actionPayload}
и распространять их через реквизиты и контекст React среди дочерних компонентов в глубине дерева.Затем родительский модуль отслеживает отправленные функции и обрабатывает большинство из них (например, манипуляции с данными) и передает необработанные действия по дереву.Это похоже на Redux, но магазин на 100% в Аполлоне.
Это был сложный путь, и я чувствую, что моя текущая модель, скорее всего, сильно изменится, поэтому я хотел бы услышать от других.Обмен компонентами и магазин приложений - это ядро каждого приложения, наверняка там должны быть другие?!