В моем проекте я еще не был готов представить Flux и думал о некоторых шаблонах, которые могут помочь с передачей данных, конфигурации или других вещей, чтобы реагирующие компоненты могли их использовать. Я понимаю, что Flux — это то, что нужно, но как насчет некоторых простых случаев, когда мы не хотим тратить время на изучение Flux или его использование и т. д.?

Шаблон компонента контейнера

Отдельная выборка данных в контейнерный класс. Компонент реакции должен работать только с реквизитами, переданными от его родителя. Контейнер управляет состоянием своих дочерних компонентов. Преимущество этого заключается в том, что вы удаляете всю ненужную информацию из ваших компонентов представления и инкапсулируете их в контейнер.

Состояние приложения

Состояние приложения и состояние компонента - это две разные вещи в реакции. Состояние компонента — это, по сути, состояние представления, управляемое компонентом. Но что, если нам нужно иметь состояние, доступное для всего приложения. Мы всегда можем передавать данные в качестве реквизита от родителя к потомку или от великого родителя к потомкам, но это быстро становится непригодным для сопровождения.

React предоставляет Mixins, чтобы обеспечить совместное использование сквозной функциональности в иерархии родитель-потомок, но ES6 обошлось без Mixins.

Я думаю, что лучший способ — это создавать модули и экспортировать сквозную функциональность, которую можно использовать, просто запросив модуль и используя его. Я думаю, что это, вероятно, лучший шаблон, пока React не представит механизм для лучшей композиции.