npm install -g create-react-app
permission오류가 나면 sudo npm install -g create-react-app
-g : global
이라는 의미
프로젝트 폴더에 방금 설치한 react-app으로 개발에 필요한 것들을 셋팅하기
create-react-app 프로젝트명
참고)
원래 리액트앱을 처음 실행하기 위해서는 webpack 이나 babel같은 것을 설정하기 위해 수많은 시간이 소요되었다.
하지만 create-react-app 커맨드로 바로 시작할 수 있게 되었다.
babel : 최신 js문법을 지원하지 않는 브라우저들을 위해서 최신 js문법을 구형 브라우저에도 작동될 수 있게 변환시켜줌.
오픈소스 배포를 위한 온라인 저장소
npm install locally : ./node_modules/.bin
npm install globally : /usr/local/bin
OR %AppData%/npm
install 하는 npm을 다른 프로젝트에서 쓰지 않는다면 Global하게 설치할 필요가 없음
npx를 통해 그냥 create-react-app
을 이용할 수 있다. ====> 디스크 용량 절약! 항상 최신버전 유지 가능!
항상 최신상태, 컴퓨터 메모리를 절약할 수 있다. (설치하고 지워지기 때문)
npx create-react-app
sample_app
npm run start
로 실행하면 자동으로 샘플 앱이 실행된다.
npm run start
로 실행한 결과
무려 2MB를 다운받게 된다.
너무 무거운 Application이 될수도 있고 보안애 취약할 가능성이 있다.
이에 대비해 프로덕션 모드에서 Application을 만들 때,
npm run build
를 실행하면 build디렉토리가 하나 새로 생긴다.
실제 프로덕션 환경에서 사용되는 App을 만들기 위해 이미 있는 index.html(public/index.html
)에서 불필요한 정보(공백, ...)들을 제거한 것
--> (build/index.html
) 용량이 훨씬 적다.
또한, src에서 작업한 것들, 에러메세지,경고창 등과 같은 것을 처리한 결과를 index.html문서에서 Load할 수 있도록 알아서 대신 처리해준다.
실제로 서비스할땐 build안에서 작업하면 된다.
추가로 웹서버의 경우 최상위 dir를 build안에 위치시키면 된다.
npx serve -s build
-s
: 생성된 build를 document root로 설정한다.
이렇게 생성된 주소로 들어가보면