nodejs 项目自定义环境变量

使用 cross-envnode 项目传入自定义参数名字

为什么使用cross-env

cross-env 目的是运行跨平台设置和使用环境变量的脚本,主要是为了兼容 windows、mac os、linux 等不同的代码运行平台。

常规使用方法

package.json

1
2
3
4
5
6
7
{
...
"script": {
"start": "cross-env NODE_ENV=production node server/index.js"
}
...
}

一般项目都是使用 NODE_ENV 传入环境变量,可能有部分特殊情况会需要自定义参数。
比如 NODE_ENVNuxt 用来判断运行环境了,值非 production 时候全部都定义为开发环境。
如果这时候需要区分开发环境,测试环境,预生产环境,生产环境,那么就不能再使用 NODE_ENV ,需要自定义运行参数。

使用方式:

1
2
3
4
5
6
7
{
...
"script": {
"start": "cross-env TEST=linx NODE_ENV=production node server/index.js"
}
...
}

注意命令中加了 TEST=linx ,运行命令

1
$ npm run start

项目中使用如下:

1
console.log(process.env.TEST); // linx
本文由 linx(544819896@qq.com) 创作,采用 CC BY 4.0 CN协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。本文链接为: https://blog.jijian.link/2020-01-02/node-set-env/

如果您觉得文章不错,可以请我喝一杯咖啡!