Я довольно новичок в Redux и прочитал, что одним из его основных преимуществ является то, что каждый компонент в вашем приложении может получить доступ к состоянию магазина, и вам не нужно передавать его из одного компонента в другой.
Итак, я создал компонент с именем Main
и «подключил» его к функциям отображения состояния и диспетчеризации:
withRouter(connect(mapStateToProps, mapDispatchToProps)(Main))
И внутри Main
у меня есть некоторый код в функции render()
, такой как:
)}/>
<Route path="/login" render={() => (
<Login {...this.props} />
)}/>
Так что в этом примере я могу получить доступ к состоянию хранилища внутри моего Login
компонента, так как я передал его ему как его реквизиту (используя реквизиты Main
).
Если я удаляю часть {...this.props}
, я больше не могу получить доступ к состоянию хранилища из этого компонента Login
- так чем он отличается? Похоже, всякий раз, когда я хочу получить доступ к состоянию магазина, я должен передать его.
Другой вопрос, который у меня есть:
Можно ли использовать состояние компонента в некоторых компонентах в дополнение к состоянию хранилища?