JavaScript/Node

[Node] 윈도우OS package.json 환경 변수 설정 (cross-env)

clichy12 2023. 8. 27. 15:03
// package.json
{
  "name": "test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "start": "NODE_ENV=DEV node index.js"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}
// index.js
console.log(process.env.NODE_ENV);
npm run start

 

MacOS 환경에서 start 스크립트를 실행하면 파일에서 선언한 NODE_ENV 값(DEV)을 사용할 수 있다

하지만 윈도우OS 환경에서 start 스크립트를 실행하면 값이 제대로 들고 오지 못할 때가 있다

 

npm run start
// package.json
{
  "scripts": {
    "start": "cross-env NODE_ENV=DEV node index.js"
}

 

cross-env 패키지 설치 후, 실행하면 윈도우 환경에서도 환경 변수 값을 사용할 수 있다

// package.json
{
  "scripts": {
    "start:windows": "cross-env NODE_ENV=DEV node index.js",
    "start:mac": "NODE_ENV=DEV node index.js"
}