Я только начал изучать перехватчики реакции и перехватчики реакции-редукции и насколько я понял все. Но одно - продолжать сверлить мой мозг, поэтому я хотел бы попросить здесь более опытных разработчиков. побочные эффекты, действительно ли мне нужны React Hooks?
У меня есть отдельный функциональный уровень (контейнеры =>, где все решения принимаются с помощью redux) и слой отображения (компоненты => где компоненты тупые и получают только данные они предполагаются для рендеринга)
Что меня беспокоит, так это то, что я делаю вызов API при начальной загрузке страницы, и я хотел бы использовать хук useEffect, но я не убежден, что я должен это сделать, когда я могу использоватьSelector из redux и useDispatch .
вот код, который я хотел бы обновить в стиле перехватчика:
const mapStateToProps = (state) => {
return {
cities: state.weather.cities,
}
}
const mapDispatchToProps = (dispatch) => {
const fetchForUpdate = (cities) => {
return cities.map((city) => {
return dispatch({ type: FETCH_START, payload: city.name })
})
}
return {
fetchForUpdate: fetchForUpdate,
}
}
const WeatherListContainer = (props) => {
const { cities } = props
const cityData = cities.map((oneCity) => {
return (
<WeatherItemContainer
name={oneCity.name}
data={oneCity.data}
key={oneCity.name}
/>
)
})
return <WeatherList item={cityData} />
}
const enhance: Function = compose(
connect(mapStateToProps, mapDispatchToProps),
lifecycle({
componentDidMount() {
console.log(this.props.cities, 'this.props.cities')
this.props.fetchForUpdate(this.props.cities)
},
}),
)
export default enhance(WeatherListContainer)
как я могу получить с помощью перехватчиков redux или перехватчиков реакции? Или можно совместить? например, использовать useEffect, а затем сохранить его из локального магазина в глобальный? Разве это немного неэффективно?