2016-08-31 1 views
3

상상해 보았다. 내 반응 응용 프로그램에는 3 개의 주요 부분이 있었는데, 상태는 전부 redux (로컬 상태 없음)로 관리된다. Login, RegisterView Profile :redux store에서 응용 프로그램 상태를 구성하는 방법은 무엇입니까?

나의 이해는 초기 상태는과 같이 보일 것이다 :

const initialState = { 
    login: {}, 
    register: {}, 
    profile: {}, 
    appUI: { 
    menuToggled: false 
    } 
}; 


export function mainReducer(state = initialState, action) { 
... 

그런 다음 내 컨테이너 요소에 내가 반응 - REDUX connect()를 사용하는 국가의 관련 부분을 당겨 것 :

로그인의 프리젠 테이션 구성 요소에서 사용자가 사용자 이름, 암호, etc를 입력하면 전역 상태가 (동작을 사용하여) 업데이트되고 좋아요 :

{ 
    login: { 
    username: "foo", 
    password: "bar" 
    }, 
    register: {}, 
    profile: {}, 
    app: { 
    menuToggled: false 
    } 
}; 

올바른 방법입니까? 유효한 나는 응용 프로그램의 상태를 구성하는 방법을 의미하므로 응용 프로그램에 "섹션"이 커지면 (crud로 생각할 때) 나는 redux에서 더 큰 숫자 필드를 갖게됩니다. 나는 반응하고 재능 있고 새로운 어떤 반 패턴도 피하고 싶다.

+0

비밀번호를 보관하는 것이 안전하다고 생각하지 않습니까? – JohnnyQ

답변

1

이것은 분명히 반 패턴이 아닙니다. mapStateToProps의 전체 목적 (connect의 첫 번째 매개 변수)은 구성 요소에 필요한 응용 프로그램 상태의 일부를 추출하는 것입니다.

나에게 우려되는 한 가지는 컨테이너 구성 요소가 로그인 자격 증명과 같은 것에 의존한다는 것입니다. 또한 감속기를 구조화 한 방법을 모르지만 redux에서 combineReducers 기능을 사용하는 것이 좋습니다.

관련 문제