С Redux вы не передаете состояние вверх или вниз.Вы обновляете глобальное состояние с помощью создателей и редукторов действий.Везде, где вам нужно достичь состояния, вы подключаете свои компоненты к состоянию и используете его.У вас есть магазин, и он включает в себя глобальное состояние.Это глобальное состояние может содержать несколько разных состояний.
Вы можете использовать полезную нагрузку или любое другое имя, переменное с вашим создателем действия.В вашем редукторе вы можете получить их с помощью action.payload, action.id и т. Д.
Как я объяснил в первом абзаце, вы обновляете свое состояние в любое время.После этого вы подключаете любой компонент к вашему состоянию в любом месте.
Нет лучшего времени или лучшего способа сделать это.Это зависит от вашего кода и логики приложения.
Конечно, есть некоторые лучшие практики, но мы не можем говорить о них так широко.После того, как вы познакомитесь с Redux, вы увидите некоторые из них.Например, я сказал: «Мы не передаем состояние Redux».Это правда, но иногда, чтобы избежать столь большого количества connect
вокруг компонентов, мы используем контейнерные приложения, подключаем это приложение к хранилищу (вы фактически достигли состояния через хранилище), а затем передаете связанные части состояния связанным компонентам.
Я рекомендую собственную документацию Redux в качестве отправной точки: https://redux.js.org/