728x90
리덕스 세 가지 규칙
1.단일 스토어
하나의 애플리케이션 안에는 하나의 스토어만 사용 할 수 있습니다.
여러 개의 스토어를 사용하는게 불가능하지는 않지만 업데이트가 빈번하게 일어날 수 있고 상태관리가 복잡해 질 수 있어서 권장하지 않는 사항입니다.
2. 읽기 전용 상태
리덕스 상태는 읽기 전용입니다.
기존의 리엑트에서 setState를 사용하여 state를 업데이트 했습니다. 이 떄 과정에서 불변성을 지키기 위해 spread 연산자를 사용하거나 immer와 같은 불변성 관리 라이브러를 사용했습니다.
리덕스도 이와 동일합니다. 상태를 업데이트 할 떄 객체를 변경하지 않고 새로운 객체를 생성해주어야 합니다.
3. 리듀서는 순수한 함수
변화를 일으키는 리듀서함수는 순수한 함수라는 다음 조건을 만족해야 합니다.
- 리듀서 함수는 이전 생타와 액션 객체를 파라미터로 받습니다
- 파라미터 이외의 값에 의존하면 안 됩니다.
- 이전 상태를 건드리지 않고, 변화를 준 새로운 객체를 만들어서 반환합니다.
- 같은 파라미터로 호출된 리듀서 함수는 언제나 같은 값을 반환하도록 해야합니다.
728x90
'프론트엔드 > React' 카테고리의 다른 글
[프론트엔드] 리덕스를 사용하여 리액트 어플리케이션 상태 관리하기[2] (0) | 2022.04.07 |
---|---|
[프론트엔드] 리덕스를 사용하여 리액트 어플리케이션 상태 관리하기[1] (0) | 2022.04.06 |
[프론트엔드] REACT Redux 라이브러리[4] (0) | 2022.04.05 |
[프론트엔드] REACT Redux 라이브러리[3] (0) | 2022.04.05 |
[프론트엔드] REACT Redux 라이브러리[2] (0) | 2022.04.04 |