개발 블로깅/오늘의 TIL
[2019.08.10] 오늘의 TIL - CRA eject란?
Hello이뇽
2019. 8. 10. 21:10
CRA(Create React App)을 생성하면, 기본 스크립트 명령어가 4개가 존재한다.
# CRA 기본 스크립트 명령어 4가지
// package.json
"scripts": {
"start": "cross-env NODE_PATH=src react-scripts start",
"build": "cross-env NODE_PATH=src react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
그 중, 마지막 eject라는 명령어에 대해서 알아보자.
# eject란?
eject는 해당 프로젝트에 걸려서 숨겨져 있는 모든 설정을 밖으로 추출해주는 명령어다.
$ yarn eject
or
$ npm run eject
Are you sure you want to eject? This action is permanent
eject를 실행하면, 위와 같이 메세지가 나온다. 한번 실행하면 되돌릴 수 없다는 뜻이다. Y를 입력한다.
그러면 CRA에 종속되어 있던 많은 설정들이 나타나게 된다.
# eject 에러가 날 시
eject를 실행하면 아래와 같이 에러메세지가 뜨며, 실행이 안될 수도 있다.
Y를 입력한 부분 바로 밑에 보면, 나는 git repository has untracked files or uncommitted changes 라는 에러 메세지가 떠 있다.
그래서 git init 후에 commit까지 실행 후, 다시 eject을 돌리니 해결했다.
이와 유사한 eject 에러에 대해 구글링을 해보니, 현재 node 버전이나 react 업데이트 관련 문제로 생길 수도 있다.
반응형