Heroku local 不读取我的 .env 文件

Heroku local doesn't read my .env file

我在以下位置尝试了 heroku 节点示例: https://devcenter.heroku.com/articles/getting-started-with-nodejs#introduction

并使用 Postgres 作为数据库。

全部成功。

现在我想 运行 它在本地,所以我使用了以下示例: https://devcenter.heroku.com/articles/heroku-local

将 DATABASE_URL 放入我的 .env 文件 - 但我无法让它工作,即使当我 运行 Heroku local 它显示:

[OKAY] Loaded ENV .env File as KEY=VALUE Format

数据库仍然没有连接,当我添加时:

 console.log(process.env.DATABASE_URL);

它向控制台写入了 undefined。

由于某种原因,我的 .env 文件没有使用正确的 unicode 编码。

我怀疑是命令:

heroku config:get DATABASE_URL -s  >.env

在我的 windows 机器上创建了一个无效的 .env 文件。它使用 UTF-16 LE 编码创建文件。

一旦我将其更改为 UTF-8,一切正常。

您可以在 VSCODE 中通过单击状态栏中的编码来完成此操作。

回应 MobileVet 的评论:

如果它是一个 create-react-app,环境变量必须以 REACT_APP_ 开头。 那为我解决了... https://create-react-app.dev/docs/adding-custom-environment-variables/

别忘了重启。