2017-03-06 2 views

답변

1

일반적으로, 엄지 손가락의 규칙은 귀하의 경우 토글 같은 서버에서 가져온 및 UI 행동에 대한 react state 지역 항목을 저장하는 일명 응용 프로그램에서 데이터를 관리 할 redux store를 사용한다는 것입니다. 당신이 현재 가장 좋은 방법은 data하기보다는 user interface (UI) 상태의 상태를 처리하기 위해 로컬 상태를 사용하는 것입니다

4

에 대한 redux를 사용하여 쉽게 여러 위치에서 무언가를 전환해야하는 경우 그러나, 예를 들어, 엄격한 규칙이 아니다 .

귀하는 위와 같은 경우에 해당됩니다. 로컬 상태로 저장할 수있는 UI 데이터의 또 다른 예는 옵션 목록의 현재 선택한 탭입니다.

local state을 언제 사용하는지 생각하는 좋은 방법은 저장중인 값이 다른 구성 요소에 의해 사용되는지 여부를 고려하는 것입니다. 값이 단 하나의 구성 요소에 고유 한 경우, 그것은 더

Redux 정교한 local state.

에서 그 값을 유지하는 것이 안전 또한 여러 구성 요소 또는 여러 경로를 통해 액세스해야하는 이벤트를 트리거하는 데 유용합니다 . 예를 들어 앱의 모든 버튼에 의해 트리거 될 수있는 로그인 모달이 될 수 있습니다. 조건부로 12 개 장소에서 모달을 렌더링하는 대신 조건부로 앱의 최상위 수준에서 모달 렌더링하고 Redux 액션을 사용하여 상점의 값을 변경하여 모달을 트리거 할 수 있습니다.

1

구성 요소 구성 방법에 따라 다릅니다. 토글 상태가 여러 구성 요소에서 사용되는 경우 redux 저장소를 통해 상태를 관리하는 것을 선호합니다. 상태가 해당 구성 요소에 국한되어 있고 다른 곳에서 사용되지 않는 경우 가장 좋은 방법은 구성 요소 내에서 상태를 관리하는 것입니다. 따라서 구성 요소는 자체 포함됩니다.

4

이에 대한 올바른 대답은 없습니다. 결정을 돕기 위해 redux documentation에서 직접 가져온 몇 가지 일반적인 규칙이 있습니다.

  • 이 데이터에 대한 관심의 대상이 애플리케이션의 다른 부분입니까?
  • 원본 데이터를 기반으로 추가 파생 데이터를 생성 할 수 있어야합니까?
  • 여러 구성 요소를 구동하는 데 동일한 데이터가 사용됩니까?
  • 이 상태를 특정 시점 인 (즉, 시간 여행용 디버깅)으로 복원 할 수있는 가치가 있습니까?
  • 데이터를 캐시하고 싶습니까? 즉, 데이터를 다시 요청하는 대신 상태가 이미있는 경우 사용하십시오.

REDUX에 UI 상태의 대부분을 유지하는 또 다른 장점은 당신이 더 많은 상태 비 기능적 구성 요소를 작성하고 향후 버전의 performance optimisations they will bring을 활용할 수 있다는 점이다 반작용이 패턴으로 설계

을 앱의 상당 부분을 구성해야하는 이러한 간단한 구성 요소의 생성을 권장하십시오. 앞으로 불필요한 검사와 메모리 할당을 피함으로써 이러한 구성 요소에 특정한 성능 최적화를 수행 할 수있게 될 것입니다. 작업시 제가

고려
+2

Redux FAQ의 저자로서, 이것은 정답입니다 :) – markerikson

1

3 점 REDUX 로컬 상태 (예컨대 양식 입력 등)

1.keep의 UI 상태와 일시적인 데이터에 반응한다.

Redux 저장소의 구성 요소를 통해 공유하려는 2.keep 데이터입니다.

3. 서버에서 가져온 데이터는 redux 저장소로 이동해야합니다.

관련 문제