Create React App(CRA)이라는 boilerplate를 통해 하나의 프로젝트를 build할 수 있다는 점은 하나하나 dependency들을 설정하는 시간을 줄여준다는 장점이 있다!
boilerplate
개발자들에게 불필요하고 복잡하고 도움이 안되는 반복적인 일들을 하지 않도록 도와주는 것
create-react-app이 없었다면 웹팩을 시작으로 온갖 설정을 스스로 만들어야 한다.
CRA를 설치하고 나서도 원하는대로 프로젝트에 맞게 커스터마이징 할 수 있는데, 그 방법이 바로 eject라는 스크립트다.
CRA를 설치하고 package.json의 scripts 부분을 보면 맨 마지막에 앱을 eject 시킬 수 있는 명령어가 있다.
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
}
npm run eject 혹은 yarn eject를 실행하면 숨겨진 모든 설정을 밖으로 추출해준다.
즉, eject 스크립트를 실행하면 CRA를 구성하는 숨겨진 많은 설정들을 꺼내어 명령어를 실행한 사람에게 모두 보여지게 된다.
❗️ 한 번 실행시 되돌릴 수 없기 때문에 주의를 기울여야 한다.
❗️ 기존 dependencies가 들어있는 패키지 파일이 두 배로 늘어난다.
<참고 : https://gocoder.tistory.com/2183
https://velog.io/@merkyuri/React-create-react-app-eject%EB%9E%80 >