★inputRef = React.createRef();
리액트에서만 사용될 수 있다. 기존 HTML 자바스크립트 방식은 DOM을 가지고 사용하지만 리액트에서는 DOM을 조작할 수 없기 때문에.
1. 최상위 컴포넌트 habits 안에서 자식에게 전달할 콜백함수를 만든다.
handleAdd = name => {}
2. 이때 인자로 name을 받아오게 만든다.
그리고 받아온 name을 state에 있는 habits 프로퍼티 안에 name이라는 키값에 전달한다.
3. 만들어진 콜백함수 handleAdd를 props "onAdd" 로 자식 컴포넌트 Habits에게 전달한다.
4. Habits 컴포넌트에서 다시 자식 컴포넌트 HabitAddfrom에게 props "onAdd"로 전달하기 위해
다시 한번 콜백함수(handleAdd)를 Habits 컴포넌트 안에서 만들고 그 안에 부모 컴포넌트에게서 받아온 props "onAdd"를 넣어 준다. 받아올 인자로는 name을 설정한다.
★name && this.props.onAdd(name) ← name에 아무 데이터가 없지 않다면(즉, 데이터가 있다면) 전달받은 onAdd라는 콜백함수에 인자로 name을 전달한다.
'React.js > [React] Dreamcoding' 카테고리의 다른 글
상태객체 & 속성 / 멤버변수 (0) | 2020.10.27 |
---|---|
데이터, 콜백함수를 props로 전달하는 과정. (0) | 2020.10.27 |
[4 - 9] 이벤트 처리하기 (state 업데이트) (0) | 2020.10.26 |
[4 - 7] state 이해하기, list key (0) | 2020.10.26 |
[4 - 2] Yarn으로 프로젝트 만들기 (0) | 2020.10.26 |
댓글