로 설정 속성, 나는 다음과 같은 간단한 감속기combineReducer는
let reducer = (prevState = {}, action) => {
return {
A: A(prevState.A, action),
B: B(prevState.B, action)
}
};
let A = B = (prevState, action) => {
if (action.type == 'foo')
return 'bar';
else
return prevState;
};
조치, 특히 @@ INIT을 상상해 내 상태가 {A: undefined, B: undefined}
될 원인이됩니다됩니다. 내 상태가 여전히 유지되어야하기 때문에 이상적이 아님 {}
now
이것은 combineReducer 패턴을 따르기 때문에 발생합니다. 어쨌든이 문제를 해결하려면?
감속기가 정의되지 않은 초기 상태를 가져야합니다. 그렇지 않으면 다음과 같은 메시지가 표시됩니다. "감속기"... "가 초기화 중에 정의되지 않은 상태로 반환됩니다. 감속기에 전달 된 상태가 정의되지 않은 경우 명시 적으로 초기 상태 초기 상태는 정의되지 않을 수 있습니다. " 그래서 당신이 어딘가에 귀하의 의견에 제안, 그것은 비어있는 같은 초기 상태로하려는 경우 null과 같은 것을 사용하여 종기 것입니다. – WTK