【发布时间】:2019-08-19 17:21:28
【问题描述】:
我想为每种模式(开发、生产等)使用单独的 .env 文件。在处理我的 vue.js 项目时,我可以使用像 .env.development 或 .env.production 这样的文件来为同一个 env 键获取不同的值。 (例如:在 .env.development:FOO=BAR 和在 .env.production:FOO=BAZ,在开发模式下 process.env.FOO 将是 BAR,在生产中我会是 BAZ)。
我正在使用 Express 服务器并希望使用这些相同类型的 .env 文件来存储端口、db uri、用户、pwd...
我知道我可以像这样编辑 package.json 中的脚本:
"scripts": {
"start": "NODE_ENV=development PORT=80 node ./bin/www",
"start-prod": "NODE_ENV=production PORT=81 node ./bin/www"
}
但是当使用多个变量时这会变得混乱。
我尝试过使用dotenv,但您似乎只能使用 .env 文件。不是 .env.development 和 .env.production。
我可以使用 dotenv 包还是需要另一个包?或者我可以在没有任何包的情况下这样做吗?
【问题讨论】:
-
欢迎来到 Stack Overflow。为什么在一台主机上需要多个环境文件?通常,您的开发和生产环境位于不同的主机上。 (例如,您的计算机上的开发和云中的生产)。
-
作为参考,这里是 Vue CLI 如何让您使用多个 .env 文件。我认为这就是乔纳斯在问题中所指的内容。我发现这种处理环境文件的方式非常有用。 cli.vuejs.org/guide/mode-and-env.html#environment-variables
标签: node.js express environment-variables dotenv