0
我有一个操作需要在自己的商店中流动数据,但也需要在配置商店中流动。我需要这个,因为添加的数据不同&它也得到了不同的清除。作用于多个商店的行为
我想知道在这种情况下,如果它会更好地使用联合减速机?或者在多个商店采取行动是可接受的解决方案
import { PAGE_CHANGE_TITLE } from 'actions/types/page.types';
import { PROJECT_SELECTED } from 'actions/types/projects.types';
const initialState = {
pages: {
last: {},
current: {},
last5: [],
},
project: localStorage.getItem('project') || {},
};
export function configs(state = initialState, action) {
switch (action.type) {
case PAGE_CHANGE_TITLE:
const last5 = [...state.pages.last5];
last5.unshift(action.data);
if (last5.length > 5) {
last5.pop();
}
return {
...state,
pages: {
last: {
...state.pages.current,
},
current: {
...action.data,
},
last5: last5,
},
};
case PROJECT_SELECTED:
return {
...state,
project: {
...action.data,
},
};
default:
return state;
}
}