2016-02-26 3 views
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; 
    } 
} 

ответ

Смежные вопросы