Я не получаю свой initialState во время ожидания ajax-запросов?Вот снимок как фактических данных, так и начального состояния редуктора.
this.props моего приложения
вот мой код редуктора:
/*
*
* MainPage reducer
*
*/
import { fromJS } from 'immutable';
import { LOAD_BANNERS, LOAD_BANNERS_SUCCESS, LOAD_BANNERS_ERROR, LOAD_CAROUSELS, LOAD_CAROUSELS_SUCCESS, LOAD_CAROUSELS_ERROR, LOAD_SIDEBAR, LOAD_SIDEBAR_SUCCESS, LOAD_SIDEBAR_ERROR } from './constants';
export const initialState = fromJS({
bannerItems: [],
carouselItems: [],
sidebarItems: [],
loadingBanners: false,
errorBanners: true,
loadingCarousels: false,
errorCarousels: true,
loadingSidebar: false,
errorSidebar: true
});
function mainPageReducer(state = initialState, action) {
switch (action.type) {
case LOAD_BANNERS:
return state.set('loadingBanners', true).set('errorBanners', false);
case LOAD_BANNERS_SUCCESS:
return state.set('loadingBanners', false).set('errorBanners', false).set('bannerItems', action.bannerItems);
case LOAD_BANNERS_ERROR:
return state.set('loadingBanners', false).set('errorBanners', action.error);
case LOAD_CAROUSELS:
return state.set('loadingCarousels', true).set('errorCarousels', false);
case LOAD_CAROUSELS_SUCCESS:
return state.set('loadingCarousels', false).set('errorCarousels', false).set('carouselItems', action.carouselItems);
case LOAD_CAROUSELS_ERROR:
return state.set('loadingCarousels', false).set('errorCarousels', action.error);
case LOAD_SIDEBAR:
return state.set('loadingSidebars', true).set('errorSidebar', false);
case LOAD_SIDEBAR_SUCCESS:
return state.set('loadingSidebars', false).set('errorSidebar', false).set('sidebarItems', action.sidebarItems);
case LOAD_SIDEBAR_ERROR:
return state.set('loadingSidebars', false).set('errorSidebar', action.error);
default:
return state;
}
}
export default mainPageReducer;
Почему редуктор отправляет мне объект (список) вместо моего начального состояния.Вот код моего app.js, где я привязал свои dataTypes:
MainPage.propTypes = {
// dispatch: PropTypes.func.isRequired,
bannerItems: PropTypes.array,
bannerItemsLoading: PropTypes.bool,
carouselItems: PropTypes.array,
carouselItemsLoading: PropTypes.bool,
sidebarItems: PropTypes.array,
sidebarItemsLoading: PropTypes.bool,
loadBanners: PropTypes.func,
loadCarousels: PropTypes.func,
loadSidebars: PropTypes.func
};