반응형
제목은 NODE_ENV 값을 설정하는 방법 처럼 보이지만, 사실은 좀 다른 부분이 있습니다.
React에서는 환경변수를 사용할때, 항상 REACT_APP_XXXX 형태로 사용해야 인식이 됩니다.
그런데 NODE_ENV는 어디서 튀어 나온걸까요?
.env 파일에 여러 REACT_APP_XXX 하는 환경 변수들과 더불어, NODE_ENV=production 으로 작성해놓은 파일을 보기도 할것인데요.
react에서는 이 .env에 적혀있는 값이 불려지는 것이 아닙니다.
**Create React App (CRA)**에서는 다음처럼 NODE_ENV를 자동 설정합니다.
명령어 | NODE_ENV 값 |
npm start | development |
npm run build | production |
npm test | test |
즉 npm run build 했을때, production optimization 되고 NODE_ENV 값이 production으로 값이 적용되게 되는 것이죠.
보통 npm start로 로컬에서 테스트 하는데 이럴때는 항상 NODE_ENV는 development가 됩니다.
그렇다면 production 처럼 테스트 할 수 있는 방법이 없을까요?
npm install -g serve
npm run build
serve -s build
이렇게 serve -s build 를 이용하여 build 된 결과물을 실행시켜서 테스트 해볼 수 있습니다.
환경변수 파일 관리
NODE_ENV 에 따라 환경변수 파일을 다르게 적용 할 수도 있습니다.
.env.production => production일때 적용
.env.development => development 일때 적용
#해피코딩 !!
'Node.js , React, Docker' 카테고리의 다른 글
[React] 지구본, Globe (0) | 2025.04.23 |
---|---|
[Typescript] 한글 조사 처리 (2) | 2025.04.09 |
[react] zustand 이용한 store-repository 구조 (0) | 2025.03.27 |
[React] OSM : 지형 정보 가져오기(export) (4) | 2025.03.24 |
[React] OSM :MAP Tile Server (0) | 2025.03.24 |