1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import {fromJS} from 'immutable';
- import * as constants from './constants';
- const defaultState = fromJS({
- featureList: [],
- blogList: [],
- articlePage: 1,
- finished: false,
- loading: true,
- isList: false
- });
- const setFeature = (state, action) => {
- return state.merge({
- featureList: action.data
- })
- };
- const setBlogList = (state, action) => {
- return action.override ? state.merge({
- blogList: action.override ? fromJS(action.data) : state.get('blogList').concat(fromJS(action.data)),
- articlePage: action.nextPage,
- finished: false,
- loading: false,
- isList: true
- }) : state.merge({
- blogList: action.override ? fromJS(action.data) : state.get('blogList').concat(fromJS(action.data)),
- articlePage: action.nextPage,
- loading: false,
- isList: true
- })
- };
- export default (state = defaultState, action) => {
- switch (action.type) {
- case constants.GET_FEATURE:
- return setFeature(state, action);
- case constants.GET_BLOGLIST:
- return setBlogList(state, action);
- case constants.SET_FINISHED:
- return state.set('finished', true);
- case constants.LOADING_TRUE:
- return state.set('loading', true);
- default:
- return state;
- }
- }
|