"Redux"는 자바스크립트 앱을 위한 예측 가능한 상태 컨테이너입니다
이는 데이터 하나만 전송하는데도
엄청나게 복잡해 질꺼임
그러므로 state(data)만 따로 관리해준다면
깔끔하게 정리할 수 있을꺼임
다음은 Redux가 사용하는 FLUX라는 디자인 패턴임
Action이 발생하면
Dispatch가 Store에 있는 state를 View단에 업데이트 해주는 식.
요런식이 됨.
<reducer/index.js>
리듀서의 루트임
리덕스의
combineReducers를 이용하여
모든 리듀서를 하나로 만듬
<reducer/recuer_books.js>
}
배열안에 객체형식으로 데이터들이 있음
이때 함수로 리턴되어야함!
결국 루트 리듀서는
books : [{title:"javascirpt:good"}...{}]
와 같이 배열로 가지게 됨
<container(component)/book-list.js>
자 일의 순서대로 살펴보자
import { connect } from 'react-redux';
1. react와 redux는 별개의 것이다. 그러므로 이를 연결할 연결고리로써 react-redux라이브러리를 사용한다
사용할 속성은 connect
2. 함수 이름 그대로 Props값을 State로 맵핑한다는 것임
여기서 받을 리턴 값은
book <- props값으로 정해질 값
state.books <- reducer에서 전달받을 값
그리고 connect를 이용하여 state를 연결!
3. LoadBookList는
BookList의 속성인 book을 이제 받았으므로( 이때, 배열이고 그 안에 객체)
.map메소드를 이용하여 풀어나감!
이때 풀어나가는건
book의 타이틀속성
4.렌더링~
'FrontEnd > React' 카테고리의 다른 글
[Redux]날씨 앱 오버뷰 (0) | 2019.01.06 |
---|---|
[Redux]리덕스_액션 (0) | 2019.01.02 |
[React]검색어 콜백 (0) | 2018.12.30 |
[React]props가 Null일 때 (0) | 2018.12.30 |
[React]YoutubeSearch API 사용 및 state 예시 (0) | 2018.12.29 |