js app을 위한 예측가능한 저장소
하나의 상태를 가져서 복잡도를 낮출 수 있다.
과거의 상태로 돌아갈 수 있다는 장점을 통해 사람들이 많이 사용한다.
store = state, reduser, dispatch, subscribe, getstate
store은 저장소라고 생각하면 된다. 실제 정보를 직접 이용하는 것이 아니라 함수를 사용해서 값을 변경하고 사용한다. 독립적으로 데이터를 관리할 수 있다.
getstate를 통해 값을 가져오고 subscribe를 이용해 값을 갱신한다.
dispatch는 action과 state 값을 받는 함수인데 이 함수는 reduser에게 값을 전달하여 이벤트를 발생시킨다.
reduser <- dispatch (action 전달)
npm install @reduxjs/toolkit
npx create-react-app my-app --template redux
`
redux 크롬 확장 프로그램
- Redux DevTools 설치
- sotre 생성 코드에
window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
추가- 효율적으로 state 관리를 할 수 있다!