NodeJs
- 브라우저 밖에서도 자바스크립트를 실행 할 수 있게 해주는 실행환경
npm (node package manager)
- Node.js를 설치하면 자동으로 설치되는 패키지도구
- Node기반의 다양한 패키지를 설치하고 버전을 관리할 수 있다.
CRA (Create-React-App)
- 리액트 프로젝트를 시작하는데 필요한 도구들을 미리 조합하여 설정하는등, 개발 환경을 미리 세팅해주는 toolchain중 하나.
- 다른 툴체인도 있지만 새로운 싱글페이지 앱을 만들때는 CRA를 가장 권장.
- Node와 NPM이 모두 설치되어 있어야 사용가능
✔️ 또다른 툴체인
Next.js
: 서버렌더링 Node.js웹사이트 만들기
Gatsby
: 고정적인 콘텐츠 지향적 웹사이트 만들기
데이터가 업데이트 되었을때, 모든 페이지를 재 업로드 하지 않고 바뀐 부분만 계산하여 업데이트
해준다. cd Desktop/project폴더명
npx create-react-app my-project
cd my-project
npm start
1번 안되는경우:
터미널을 열어sudo npx create-react-app 프로젝트명
입력
실행중인 서버종료:
터미널에서Ctrl + C
npx:
프로젝트 생성해주는 명령어 제공
*NodeJS & NPM & 라이브러리 = 스마트폰 & 앱스토어 & 앱 의 관계
NPM으로 설치한 패키지들이 실제로 저장되는곳
프로젝트 구동에 필요한 모든 라이브러리코드들을 보관하는곳
index.html을 포함, 실제서버에 배포되는 폴더이기 때문에 url로 접근가능하다.
static 파일 보관함
html파일이나 이미지파일들을 잠시 보관하고 싶을때 사용
코드를 작성하는 곳으로, 가장중요한 폴더
index.js
가 메인페이지
Public폴더(index.html) & src폴더(index.js) & src폴더(App.js)
Public폴더(index.html)
: SPA로 여기서 자바스크립트를 이용한 모든처리를 다함.
- JSX로 작성
- JSX : 자바스크립트 안에서 HTML을 보다 쉽게 작성할 수 있게 도와주는 언어로 html과 문법이 유사
src폴더(index.js)
: index.js와 index.html을 연결.- import 명령어를 사용하여 다른파일들의 내용을 가져올 수 있는데
react
reactDOM
등 여러 패키지에서 미리만들어둔 함수를 이용해서
DOM에서 id가 root인 값을 가져와서 App이라는 컴포넌트와 렌더링
패키지에 대한 정보가 기입된 파일 (자동생성됨)
Scripts
: 프로젝트에서 실행 할 수 있는 스크립트들을 정의
dependencies
: 설치한 패키지들의 정보가 기입되어있음
git 으로 관리하지 않을 파일, 폴더들을 기입하는 파일
- 이 파일안에 기록된 파일들이나 폴더들은 git으로 관리되고 있지 않는다.