2017-03-16 5 views
-1

나는 앱의 캘린더 부분을 만들었고 재사용이 가능하도록 노력했다.CombineReducers와 반응이 잘되는 구조

나는 또한 달력을 사용하여 다른 부분을 만들었습니다.

그래서 combineReducers 함수를 사용했습니다.

import calendar from '../../common/calendar/Reducer'; 
import insatester from './Reducer'; 

const reducerCombiner = combineReducers({ 
    calendar, 
    insatester 
}); 
export default reducerCombiner 

그런 다음 나는 결합 된 감속기를 사용하여 상점을 만들었습니다.

먼저 제대로 작동하는 것 같습니다. 하지만 상점과 데이터가 분리되었습니다.
예)
store.calendar.data1 < - 달력
store.insatester.data2에서 < - 내가 생각하기 때문에 재사용이 일정하지 않습니다, insatester에서 일정 이벤트 DB 데이터를 얻기 위해 노력 그리고

insatester에서 그렇게. 하지만 문제는 캘린더 앱의 저장된 db 데이터를 사용하여 store.insatester에 액세스해야 함을 의미하지 않습니다.

질문 1. 저장소를 동일한 수준으로 만들기 위해 감속기를 어떻게 결합 할 수 있습니까?
예)
store.data1 < - 캘린더
store.data2 < 발 -

insatester Question2에서. 구조에 문제가 있습니까? 어떻게 변경할 수 있습니까?

+0

그래서, 당신은 구성 요소 나 감속기의 데이터에 액세스해야합니까? –

+0

을 캘린더 구성 요소에 저장하지만 store.insatester의 데이터에 액세스해야합니다. 따라서 구성 요소를 재사용하면 이상하게 보입니다. – Pangs

답변

0

전체 상태에 액세스 할 수있는 감속기를 작성해야합니다. 보시다시피, combineReducers은 상태의 단일 슬라이스로 제한됩니다. 사용자 지정 감속기를 앞에 놓아 두 조각의 데이터가 필요한 작업을 처리하고 나머지는 combineReducers 부분에 넣을 수 있습니다. 돌아 오는 문서의

이 페이지는 설명 : http://redux.js.org/docs/recipes/reducers/BeyondCombineReducers.html#sharing-data-between-slice-reducers