React의 가장 큰 특징은 페이지 단위가 아닌 컴포넌트 단위로 시작하는 점
페이지를 만들기 이전 컴포넌트를 먼저 만들고 조립
상향식으로 만들어 테스트가 쉽고 확장성이 좋음
하나의 컴포넌트는 한가지 일만 함
컴포넌트는 컴포넌트 바깥에서 props를 이용해 데이터르 마치 인자 혹은 속성처럼 전달받을 수 있음
즉, 데이터를 전달하는 주체는 부모 컴포넌트
데이터의 흐름은 하향식 ⇒ 데이터 단방향 흐름
컴포넌트는 props를 통해 전달받은 데이터가 어디서 왔는지 전혀 알지 못함
어떤 데이터를 상태로 두어야 하는지?
•
부모로부터 props를 통해 전달되는가
•
시간이 지나도 변하지 않는가?
•
컴포넌트 안의 다른 state나 props를 가지고 계산 가능한가?
그렇다면 state가 아님
두개의 자식 컴포넌트가 하나의 상태에 접근하고자 할 때는 두 자식의 공통 부모 컴포넌트에 상태를 위치해야함
React 에서 데이터를 다룰 때에는 컴포넌트들간의 상호 관계와 데이터의 역할, 데이터의 흐름을 고려하여 위치를 설정