项目地址: https://github.com/motdotla/dotenv
主要就是可以读取 .env
文件,然后把里面的变量加载到 process.env
中。
用法很简单,就不赘述
package.json
scripts
里加载环境变量由于我需要在 scripts
里执行一些命令,这些命令需要读取环境变量
虽然可以 用 cross-env
这样,但是这样 很繁琐,每次新增,改变 环境变量,都需要变动这里,非常的麻烦
"scripts":{
"start": "cross-env DB_URL=prodnode DB_HOST=prodnode index.js",
"dev": "cross-env DB_URL=devnode index.js"
}
dotenv
,非常方便,每次修改环境变量,只要修改 对应的 .env
文件即可{
"scripts": {
"dev": "dotenv -e .env.dev -- node index.js",
"test": "dotenv -e .env.test -- node index.js",
"prod": "dotenv -e .env.prod -- node index.js"
}
}
把 .env.dev
文件里的环境变量加载到 process.env
中,然后执行 node index.js
, 这时候 index.js
里就可以读取到环境变量了
dotenv -e .env.dev -- node index.js
#dotenv -e .env.dev:加载文件名为 .env.dev 的环境变量( -e .env.dev 是传递给dotenv的参数)
# -- 是分隔符,分割 dotenv 和 node 这两个命令
#node index.js : 执行 node index.js