React Redux props
Я начал изучать React, для написания фронта для своих сервисов, столкнулся с такой проблемой: написал reducer и начальное состояние вытянул из своего api. Это файл с редьюсером
const initialState = getInitialState();
function getInitialState() {
const initialState = {
hotelList: [],
};
API.get('/hotels')
.then((response) => {
initialState['hotelList'] = response.data
})
return initialState;
}
export const hotelReducer = (state = initialState) => {
return state;
}
Далее в основном компоненте я подключил стор и пытаюсь получить значение hotelList:
import Header from './components/Header/Header'
const App = (props) => {
console.log(props.auth.testArr)
console.log(props.hotels)
return (
<BrowserRouter>
<div className="App">
<Header isLoggedIn={props.auth.isLoggedIn}/>
<Route path='/login' component={LoginForm}/>
<Route exact path='/' component={() => <HotelList hotelList={props.hotels.hotelList}/>} />
</div>
</BrowserRouter>
);
}
const mapStateToProps = store => {
return {
auth: store.auth,
hotels: store.hotels,
}
}
export default connect(mapStateToProps)(App);
Когда я вывожу в консоль props.hotels, то там видно мой hotelList:

Но когда я пытаюсь вывести props.hotels.hotelList, то выводится пустой массив:

Помогите разобраться с проблемой
Ответы (1 шт):
Автор решения: Gayrat Vlasov
→ Ссылка
Основная ошибка тут:
export default connect(mapStateToProps)(App);
connect (даже исходя из названия присоединяется к Provider В Provider передается store, созданный с помощью createStore