리액트를 설치하고 프로젝트를 시작해보자!
💡툴체인이란? 여러가지 도구들을 연결해 준 것을 말한다.
💡툴체인이 필요한 이유는?
- 리액트는 ui를 구축하기 위한 자바스크립트 라이브러리이기 때문에 ui외에 많은 기능들을 위해 다른 패키지들이 필요하다!
- 패키지들을 다운받고 각각의 호환성을 맞추고 환경 설정하는 것은 번거롭고 어려운 일이기 때문에 리액트와 필요한 도구들을 미리 조합해서 설정해둔 툴체인을 만들어두고 이를 이용해 환경을 구축하는 것이다!
- 툴체인에도 여러 종류가 존재하지만 리액트를 배우고 있고, 새로운 싱글 페이지 앱을 만들기 위해서 Creat React App을 사용하도록 한다.
✋CRA를 설치하면 git init을 안해도 되는 이유는?
CRA를 이용해서 프로젝트를 구성하면 기본적으로 git init 과정을 실행해준다. 따라서, CRA로 구성을 할 때는 따로 git init을 해주지 않아도 된다.
npx create-react-app 프로젝트명
npx create-react-app 프로젝트명
를 입력한다.webpack
babel
을 이용하여 수동으로 설치하고 세팅시에 번거로움이 있다.npx create-react-app 프로젝트명
를 사용하면 쉽고 빠르게 개발환경 세팅이 가능하다.package.json
에 dependencies에 적혀있다.
npm install
- npm에서 dependencies에 기입된 패키지들을 한꺼번에 설치 할 수 있다.
<div id="root"></div>
밑으로 react코드가 실행돼서 만들어진 DOM이 구현된다.App.js
index.js
<React.StricMode>
는 좀더 엄격하게 리액트로 작성된 내용을 검사하는 옵션을 위한 내용이다. reportWebVitals();
은 어플리케이션의 성능을 측정하기 위한 내용이다.<App />
컴포넌트를 렌더링 시켜준다.start
: 개발모드로 프로그램 실행 build
: 실제 배포모드로 만들어줌test
: 테스트eject
: 내부 설정파일을 꺼내는 역할(webpack, babel 설절을 변경하고 싶을때 사용)마무리✨
빨리 create-react-app 으로 내 프로젝트 만들어서 리액트로 무언가를 만들어 보고싶다는 생각이 든다!! 알면 알수록 신기하고 재미있는 리액트다. 앞으로 얼마나 많은 creat-reate-app을 하게 될런지... 힘들고 어렵겠지만 그래도 리액트로 무언가를 만든다는게 재밌을거 같아서 기대가 되는 마음이 더 큰거 같다.