Промежуточное ПО Redux может предоставить приложению React возможность превзойти эффективный, но потенциально проблематичный способ React передачи свойств и состояния данных между различными компонентами в соответствии со строгой иерархией. Сохраняя все части состояния и все действия, которые активируют изменения состояния, в единый объект, «единый источник правды», Redux может сделать передачу состояния и свойств более гибкой во всем приложении, независимо от того, насколько оно велико.

Как новичок в Redux, я обнаружил, что уровень сложности, который Redux добавляет в React, несколько обескураживает.

Тем не менее, эту сложность можно разбить гораздо более четко, просмотрев поток Redux на диаграмме и следуя ему, как он работает в рабочем приложении Daily Weight Loss Advisor. Исходный код для функций журнала и ресурсов во внешнем репозитории приложения иллюстрирует поток на диаграмме ниже.

ПРИМЕЧАНИЯ:

1. API, используемый в приложении, взят из репозитория Rails только для API.

2. На диаграмме функциональные компоненты обозначены прямоугольниками, а компоненты класса — овалами. Хранилище (которое вместе с создателями действий (компонентами выборки) и редьюсерами составляют три основные структуры со специализированными ролями в Redux.