[React] 리액트에서 배운 점 정리1
<클론코딩 영화="" 평점="" 웹="" 서비스=""> 책을 통한 리액트 학습클론코딩>
책을 학습하며 알게된 리액트 지식을 정리한 글입니다.
public 폴더
- favicon.ico 파일 : 브라우저 제목과 함께 표시되는 아이콘
창을 열 때, 상단 웹 페이지 표시줄을 보면 맨 앞에 표시되는 아이콘이 있다. 이곳에 표시될 아이콘을 의미한다.
프로젝트 시, 해당 아이콘 디자인 작업이 필요할 것이다.
- index.html 파일 : 기본 내용이 작성된다. 이 곳은 건들일 일이 거의 없다. (이 외의 파일들도 마찬가지이다.)
src 폴더
- App.js에서 수정을 이루면 창에 해당 내용이 적힌다.
리액트 동작 원리
- App.js와 index.js와 같은 폴더 코드들을 해석하여 그 결과물을,
index.html에 <div id="root"> </div>사이에 끼워 넣는다.
터미널을 종료하면,,,
- 터미널을 종료하면 리액트 앱의 실행이 유지되지 않는다.
나는.. 깨달았다.. 초보자들이 많이 저지르는 실수라고 한다. 터미널을 유지시키는 것을 잊지말자!
컴포넌트
- 리액트는 컴포넌트로 화면에 그려진다.
App.js의 컴포넌트를 index.js에 import하여 아이디가 root 에 그려지도록 정의한다.
그러면 아이디가 root인 것이 index.html에 끼워져서 출력되는 것이다.
리액트 앱은 모두 컴포넌트로 구성된다 ex.
컴포넌트 만들기
-
src 폴더에 대문자로 시작하는 이름의 js 파일 만들기 (예시. Potato.js)
- Potato.js 파일의 코드
import React from 'react';
function Potato(){
return <h3> I love potato</h3>;
}
export default Potato;
- App.js 파일의 코드
import React from 'react';
import Potato from './Potato';
function App() {
return (
<div>
<h1>Hello</h1>
<Potato />
</div>
);
}
export default App;
-
짧은 코드를 가진 컴포넌트의 경우 App.js 안에서 내부 함수를 만들어 컴포넌트를 이용할 수 있다.
- App.js 파일의 코드
import React from 'react';
function Potato() {
return <h1> I like potato</h1>;
}
function App() {
return (
<div>
<h1>Hello</h1>
<Potato />
</div>
);
}
export default App;
props
-
컴포넌트에서 컴포넌트로 전달하는 데이터
-
컴포넌트의 재사용을 돕는다.
-
컴포넌트에 데이터 형태와 데이터 값을 담는다.
-
사용하기 위해서는 컴포넌트를 정의한 함수의 파라미터를 이용하여 화면에 표시{}하거나 console.log()로 데이터를 전달한다.