일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- bucket list
- free react course
- React & Redux로 시작하는 웹 프로그래밍
- 버킷리스트
- JavaScript
- redux
- ENFJ포스팅
- 노마드코더
- 리액트
- 패스트캠퍼스
- 국비지원
- HTML
- nomadcoders
- class
- 코딩
- 내일배움카드
- K디지털기초역량훈련
- 반응형 이메일
- ENFJ
- object-oriented programming
- 바이트디그리
- 반응형
- REACT강의
- 객체지향
- 자바스크립트
- CSS
- react
- 이메일 코딩
- 무료리액트강의
- Today
- Total
미미 공부/취미방
[코딩일기] Redux를 공부하면서 본문
Redux
1. Redux는 전역 데이터를 효과적인 관리를 위한 라이브러리.
2. drilling, bubbling 없이 'store'라는 공간과 통신해서 state를 변경, 전달 한다.
3. '액션(Action)'* 정의 > 액션을 받아서 결과를 만드는 '리듀서(Reducer)'** > 리듀서를 합쳐서 'store' 만들기
(*리듀서를 합친다는 개념이 잘 이해되지 않음)
*액션(Action)은, 객체(Object)형태로 type이라는 key를 필수로 가지고 있어야 한다. type은 문자열이다.
액션 객체는 함수로 만든다. 해당 함수는 스토어(Store)에 전달해 상태 변경 용도로 사용된다.
function 액션생성자명 (...args) {return 액션};
**리듀서(Reducer)는, 액션을 받아서 그 결과를 만들어주는 함수이다. 새로운 state를 만들어낸다.
Pure Function. 항상 같은 input을 받으면 같은 값을 return 한다. 시간에 따라 달라지는 결과 값은 사용하면 안된다.
불변해야 한다. 원래 state와 변경된 state가 별도의 객체로 만들어져야 한다.
function 리듀서명 (previousState*, action**) {return newState***};
*previousState는 현재 state
**action은 받은 액션
***newState는 새로운/변경된 state
[actions.js 코드]
[reducers.js 코드]
[store.js 코드]
[index.js 코드]
store.getState() : 현재 스토어의 state를 가져오는 함수
store.dispatch(액션) : 스토어 상태 변경 함수
store.replaceReducer(다른리듀서) : 다른 리듀서로 교체
store.subscribe 결과물이 unsubscribe라는 역할을 하는 함수를 리턴한다.* 어떻게 리턴 되는지 이해되지 않음.
'Programming > Journal' 카테고리의 다른 글
[코딩일기] Redux combineReducers(), createStore() 흐름 이해 (0) | 2023.07.03 |
---|---|
[코딩일기] 스프레드 연산자 (0) | 2023.07.02 |
[코딩일기] 호환성 vs 최신 기능 (0) | 2023.07.01 |