나.부.리 1
React 정리….
React Design Pattern
React의Component는 상태, DOM, 이벤트 등 다양한 것들을 관리하는 역할을 함React에는 여러Design Pattern이 있음
Design Pattern?
- 재사용성과 유지보수성을 높이기 위해 사용
- 하나의
Component에서Data의 Fetch와Render를 같이 표현하면 코드의 중복이 생길 수 있음 - 따라서,
Data를 가져오는 부분과가져온 데이터를 뿌리는 부분을 나눠줄 필요가 있음 Containervs.PresentationalStatefulvs.StatelessSmartvs.DumbPurevs.Unpure등등으로Component를 관리
Container Component
How things work- 데이터를 가져오기 위한 컴포넌트 (fetch)
style(css)가 거의 없음stateful- userPage, followedUserList …
Presentational Component
How things look- 데이터를 화면에 나타내기 위한 컴포넌트
props를 가지고data를 화면에 출력- 대부분
Functional component로 작성 - page, sidebar, story, userInfo, list …
Redux
- 하나의
store에 데이터를 보관하는 방법 store의state는 오직action을 통해서만 변경이 가능reducer는pure function임- 상태 관리 라이브러리
Flux Pattern구현
Redux 동작 순서
- 변화 발생
action에서 감지,type에 대한 정보를 가진 객체 생성- 각
action에 따라 정의된reducer가 새로운 상태를 만들고state갱신 Component들은store를 구독하고 있다가 상태 변화를 반영
Redux saga
data fetching등의 비동기 동작들을 쉽게 하기 위한 라이브러리redux middlewareaction에 대한 리스너- 객체를 반환