我正在尝试使用节点应用程序中的.env
文件和dotenv
NPM模块来读取它,但是使用一些变量和插值。
在标准bash文件中起作用的内容似乎未在.env配置文件中运行。例如,给出:
APP_NAME=tixy
MONGODB_URI="mongodb://127.0.0.1:27017/${APP_NAME}"
将直接以代码形式出现
const mongoUri = process.env.MONGODB_URI
为"mongodb://127.0.0.1:27017/${APP_NAME}"
是否有一种方法可以运行.env
?
也许我可以在应用程序启动时“获取”它,并为所有变量使用export
,但这似乎很笨拙……
答案 0 :(得分:1)
dotenv
不会扩展环境变量,但是除了dotenv
之外,您还可以使用dotenv-expand
来获得此行为:
var dotenv = require('dotenv')
var dotenvExpand = require('dotenv-expand')
var myEnv = dotenv.config()
dotenvExpand(myEnv)
// Should be OK now.
const mongoUri = process.env.MONGODB_URI