#5. CONCLUSIONS
- 코드를 Cloud에 올릴 것임.
1) 다음 명령어로 gh-pages를 설치함. gh-pages는 웹사이트를 github의 github page 도메인에 나타나게 해준다.
npm i gh-pages
2) package.json에 다음과 같이 homepage를 추가함.
<package.json>
"homepage": "https://yoondj98.github.io/movie_app/"
3) build를 run해서 build폴더를 생성하고 우리는 그 폴더를 github에 올릴 것임. 다음과 같이 build를 실행하면 build폴더를 생성할 수 있음. 이것을 deploy의 이전 과정인 predeploy에 설정해줄 것임. package.json의 scripts에 deploy와 predeploy를 추가함.
npm run build
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"deploy": "gh-pages -d build",
"predeploy": "npm run build"
},
4) 다음 명령어로 deploy를 실행시키면 자동으로 predeploy가 먼저 실행되고 build script가 실행되고 이것은 build 폴더를 만들 것이다. 그 이후 deploy가 실행되어 gh-pages를 호출하고 그것을 build에 붙여넣고 업로드한다.
이때, deploy까지 실행이 된 후 https://yoondj98.github.io/movie_app/ 로 이동을 했는데도 404 에러창이 떴다. 확인해 본 결과 GitHub의 세팅에서 private을 public으로 변경하고 source에서 gh-pages로 변경을 해주고 다시 돌려보니 잘 실행이 되었다.
5) react hook이란 새로운 react 요소 덕분에 class 컴포넌트가 없어도 state를 가질 수 있다. 이것은 class 컴포넌트를 대체하는 것이 아닌 새로운 기능이다. 그러므로 class컴포넌트를 애용하는 것에는 문제가 없다.