1
- 사용자 인터페이스 렌더링사용자가 웹 페이지를 방문하면 서버는 다음과 같은 HTML 파일을 브라우저에 반환한다. 그 후에 브라우저는 HTML을 DOM(문서 개체 모델)으로 구성한다
- DOM이란?
- DOM은 HTML요소의 객체 표현
- 부모와 자식관계가 있는 트리 구조
- 사용자 이벤트를 수신하고 사용자 인터페이스에서 특정 요소를 선택, 추가, 업데이트, 삭제하여 DOM을 조작
- 스타일과 내용도 변경 가능
2
- Javascript 및 DOM 메서드로 UI 업데이트
- 명령형 vs 선언형 프로그래밍
- 명령형: 단계적으로 접근("어떤 방법으로" 컴퓨터 화면에 페이지를 나타내야 하는지를 묘사)
- 선언형: 단계를 고려하지 않고 선언적으로 접근("무엇"이 나타나야하는지를 묘사)
- 속도를 높일 수 있어서 선호함
- 선언적 라이브러리 → 리액트
- 명령형 vs 선언형 프로그래밍
3
- 리액트 시작하기
- react는 핵심 React 라이브러리
- react-dom은 DOM과 함께 React를 사용할 수 있도록 하는 DOM관련 메서드 제공
JSX란?
- 친숙한 HTML과 유사한 구문으로 UI를 설명할 수 있는 Javascript용 구문 확장
- 세가지의 JSX규칙
- React fragment <></>
- Close all the tags
- camelCase most of things
- Babel: jsx를 javascript로 변환하는 컴파일러
명령형
<script type="text/javascript">
const app = document.getElementById('app');
const header = document.createElement('h1');
const headerContent = document.createTextNode('Develop. Preview. Ship. 🚀');
header.appendChild(headerContent);
app.appendChild(header);
</script>
선언형
<script type="text/jsx">
const app = document.getElementById("app")
ReactDOM.render(<h1>Develop. Preview. Ship. 🚀</h1>, app)
</script>
4
- React를 위한 필수 자바스크립트
- Function and Arrow Function
- Objects
- Arrays and Array methods
- Destructuring
- Template Operators
- ES Modules and Import / Export Syntax
5
- React 핵심 개념
- Components
- 재사용이 가능한 코드 모듈
- 나머지 부분을 건드리지 않고 구성요소를 쉽게 추가, 업데이트 및 삭제할 수 있기 때문에 코드가 성장함에 따라 유지관리가 쉬움
- UI 요소를 반환하는 함수
- 일반 HTML 및 Javascript와 구별하기 위해 대문자로 표시
- <> 사용
- React 구성 요소(Components)를 계속 중첩하여 구성 요소 트리를 형성
- 이 모듈 형식을 사용하면 앱 내부의 다른 위치에서 구성요소를 재사용할 수 있다
- Props(read-only)
- 정보 조각들을 React components에 속성으로 전달할 수 있다
- components의 동작을 변경하거나 화면에 렌더링될 때 시각적으로 표시되는 항목을 변경하는 사용자 지정 props를 허용하는 구성요소를 디자인 → 이러한 props를 상위 구성 요소에서 하위 구성 요소로 전달
- 객체이기 때문에 object destructuring를 사용하여 함수의 매개변수 내에서 props 값의 이름을 명시적으로 지정할 수 있음
- State (can be asynchronous)
- Listening to Events
- onClick, onChange, onSubmit …
- Handling Events
- handleClick
- State and Hooks
- useState 를 호출할 때 이 구성요소가 무언가를 기억하기를 원한다고 React에 알려줌
- React가 렌더링되는 동안에만 사용할 수 있는 특수 기능
- Listening to Events
- Components
'react' 카테고리의 다른 글
React Dev Tool - React conf 2021 (0) | 2022.03.06 |
---|