Я работал над довольно простым приложением React в качестве учебного процесса и хочу начать использовать Flux (или, что более вероятно, Redux), чтобы продолжить обучение.
Код для реализации решения, подобного Flux, кажется достаточно простым, но я немного не понимаю, когда это уместно и как все должно быть устроено в соответствии с передовой практикой.
С точки зрения неспециалиста, мое лучшее предположение о распространенном варианте использования состоит в том, что Flux позволяет компонентам взаимодействовать друг с другом без передачи общих реквизитов, поэтому, имея это в виду, вот пример того, для чего я надеюсь использовать Flux в моем приложение:
Допустим, у меня есть компонент профиля пользователя, который периодически обновляется с помощью вызова ajax. Пока этот вызов ожидает возврата своих данных, в другом месте страницы отображается загрузочный счетчик gif, а не в родительском или дочернем компоненте, который запускает вызов ajax. В этом сценарии, как бы я использовал Flux, чтобы предложить счетчику отображать/скрывать в соответствующие моменты (т.е. начинать с отправки запроса, заканчивать, когда получен ответ)? Если бы его видимость определялась состоянием компонента профиля, это было бы легко, но, очевидно, мне нужен один компонент для связи с тем, что, как я полагаю, можно было бы назвать дальним родственником.
Как бы я разложил свои действия, редукторы и еще много чего, чтобы добиться этого?
Я не ищу никого, кто бы писал для меня код здесь, так как я определенно научусь этому лучше, делая это, но я определенно был бы признателен за некоторые общие советы по методологии, которую следует использовать в такой ситуации.
Большое спасибо!