본문 바로가기

React

React 개발환경 구축하기

반응형

component의 장점

1. 가독성

2. 재사용성 - component 화

3. 유지보수

 

공부전략

코딩 -> 실행 -> deploy

공식문서에 익숙해지기

 

📝 개발환경

 

원래 리액트 앱을 처음 실행하기 위해서는 webpack이나 babel같은 것을 설정하기 위해 많은 시간이 걸렸다.

babel = 최신 자바스크립트 문법을 지원하지 않는 브라우저들을 위해서 최신 자바스크립트 문법을 구형 브라우저에서도 사용할 수 있도록 변환시켜준다.

webpack = 웹사이트들이 커질수록 라이브러리, 프레임워크를 사용하면서 복잡하게 됐는데 이를 번들 시켜줘서 묶어준다, 많은 모듈을 합해서 간단하게 만들어준다.

 

but, 이제는 create-react-app command로 바로 시작할 수 있다.

 

npm = Node.js로 만들어진 프로그램을 쉽게 설치해주는 일종의 앱스토어

 

Node.js 설치하기 → npm툴을 이용해서 create react app 설치하기

 

(공식적으로는 npx를 이용해야 한다)

- npx는  create react app 임시로 다운로드하여서 일회용으로 설치했다가 삭제까지 한다. 항상 최신 버전으로 사용할 수 있다.

 

🌀 샘플 리액트 애플리케이션을 구동시키기 - 터미널 사용

 

킬 때 = npm run start

끌 때 = ctrl+c

 

 

⭐ JS 수정 

 

샘플 리액트 애플리케이션을 수정하는 것부터 실습해보기 샘플

 

index.html의 div 태그 안에 들어가는 component는 src안에 있는 파일들을 수정해서 만들 수 있다.

= 개발 작업을 하게 되면 모든 파일은 src안에 넣게 될 것이다.

그중에서 entry파일(진입 파일)은 src안에 index.js파일이다.

- public 디렉토리는 creat react app에서 npm run start했을때 파일을 찾는 다큐먼트 루트이다.

 

 index.js의 root index.html의 root를 바꾸고 싶으면 두 파일 속 div 태그의 id를 바꾸면 된다.

 

document.getElementById('~')

<div id="~"></div>

 

 

- index.js의 App이 리액트를 통해 만든 사용자 정의 태그이다.

 

 

- component의 실제 구현은 index.js의 import App from './App';  →  src의 App.js의 div App 내부에서 수정하면 된다.

 

⭐ CSS 수정 

 

 

 

- App.css App이라고 하는 component의 디자인을 그 앱 안에 넣는다.

 

⭐ 배포하기 

 

create-react-App 개발환경은 파일이 좀 무겁다 → 배포 시에는 무거우면 안 된다

개발환경을 실행할 때는 Npm run start을 썼는데 → 프로덕션 모드의 애플리케이션을 만들 때 = 빌드할 때는 npm run build 명령어를 사용한다.

<build 디렉터리>가 생긴다

<build 열어보기>

build속 html 열어보기 → create react App이 실제 프로덕션 환경에서 사용되는 앱을 만들기 위해서 우리가 이미 가지고 있는 index.html의 공백이나 불필요한 공간을 지운 것이다 - 이런 식으로 용량을 줄여놓은 것

src에서 작업한 것도 불필요한 것을 지우고 정리한다.

 

결론

 

1. 실제로 서비스할 때는 build 내부에 있는 파일을 쓰면 된다.

2. 웹서버가 문서를 찾는 최상위 디렉토리에 build 내부에 있는 파일을 위치시키면 된다.

 => 실 서버 환경이 완성된 것!

 

 

명령어

 

npm install -g serve

- npm을 통해서 설치할 수 있는 간단한 웹서버

- 컴퓨터 어디에서나 서브 명령어를 통해서 웹서버를 설치할 수 있다

 

npx serve

- 한 번만 실행시킬 웹서버를 다운받아서 실행시키는 것

 

npx serve -s build

- serve라는 웹서버를 다운받아서 실행시킬 때 build 디렉토리를 다큐먼트 루트로 하겠다 →

주소를 알려줌 → 해당 주소를 접속하면 용량이 훨씬 작아진 것을 확인할 수 있다. (1.7MB 125KB)

 

'React' 카테고리의 다른 글

setup / props / state / data fetch  (0) 2020.11.03
Update, Delete 기능 구현  (0) 2020.10.28
Component 이벤트 만들기  (0) 2020.10.26
props / state  (0) 2020.10.22
Component 제작  (0) 2020.10.20