package.json 中,如果希望在 script 属性的运行脚本中设置环境变量,来区分开发环境 或 生产环境。
unix与windows环境的设置方式是不同的。
这个不同可以通过cross-env来实现跨平台设置。

windows:

1
2
3
4
5
6
set NODE_ENV=production

"scripts": {
"build": "set NODE_ENV=production && npm run build",
"dev": "set NODE_ENV=development && npm run dev",
}

linux & mac:

1
2
3
4
5
6
export NODE_ENV=production

"scripts": {
"build": "NODE_ENV=production npm run build",
"dev": "NODE_ENV=development npm run dev",
}

cross-env跨平台设置:

1
2
3
4
5
6
npm i cross-env -D

"scripts": {
"build": "cross-env NODE_ENV=production npm run build",
"dev": "cross-env NODE_ENV=development npm run dev",
}

参考

  1. npm scripts设置环境变量方法
  2. package.json里script设置环境变量,unix与windows的区别