35 lines
725 B
JavaScript
35 lines
725 B
JavaScript
const GROUP_KEY = 'group';
|
|
const GROUP_CHANGE = 'group/change';
|
|
|
|
export const saveGroup = (group) => {
|
|
localStorage.setItem('group', JSON.stringify(group));
|
|
};
|
|
|
|
export const loadGroup = (initialValue = []) => {
|
|
const groupData = localStorage.getItem(GROUP_KEY);
|
|
if (groupData) {
|
|
return JSON.parse(groupData);
|
|
}
|
|
return initialValue;
|
|
};
|
|
|
|
export const groupReducer = (prevGroup, action) => {
|
|
const { group } = action;
|
|
console.log(group);
|
|
switch (action.type) {
|
|
case GROUP_CHANGE: {
|
|
return group;
|
|
}
|
|
default: {
|
|
throw Error(`Unknown action: ${action.type}`);
|
|
}
|
|
}
|
|
};
|
|
|
|
export const groupChange = (group) => {
|
|
console.log(group);
|
|
return ({
|
|
type: GROUP_CHANGE, group,
|
|
});
|
|
};
|