Потому что это рабочий процесс Redux.
Когда без редукса вы используете локальное состояние (состояние компонента) и передаете данные через родительский элемент дочерним элементам, это делает обмен данными очень сложным, когда у вас есть больше компонентов.
ComponentOne имеет данные, которые должны быть переданы в компонент 4:
ComponentOne -> ComponentTwo -> ComponentThree -> ComponentFour
В Redux у вас есть хранилище, но вы не можете использовать его как объект (геттеры и сеттеры)вы сопоставляете его содержимое с компонентами, которым необходимо каждое свойство.
Сценарий Redux:
store {userName: "user", otherData...}
Панель управления
function mapStateToProps(state) {
return {
userName : state.userName
}
Таким образом,Компонент будет прослушивать userName
изменения, но может изменять данные только в хранилище с помощью mapDispatchToProps .Таким образом, Единственный Источник Истины Принцип Реакции гарантирован.