62

我正在使用dotenv模块从.env文件中加载环境变量。

.env

# config
DAILY_REPORT_SCHEDULE='*/1 * * * *'
PORT=8080
NODE_ENV=development
DOTENV_DEBUG=true

# credentials
PROJECT_ID=shadowsocks-218808
KEY_FILE_NAME='/Users/ldu020/workspace/nodejs-gcp/.gcp/shadowsocks-218808-7f8e109f4089.json'

如您所见,我在.env文件中添加了两条注释。

dotenv.js

require('dotenv').config({ debug: process.env.DOTENV_DEBUG === 'true' });

dotenv给我调试信息:

[dotenv][DEBUG] did not match key and value when parsing line 1: # config
[dotenv][DEBUG] did not match key and value when parsing line 6:
[dotenv][DEBUG] did not match key and value when parsing line 7: # credentials
[dotenv][DEBUG] did not match key and value when parsing line 10:
[dotenv][DEBUG] did not match key and value when parsing line 11:

我知道收到这些调试消息的原因是我在.env文件中添加了两条注释和一些新行。dotenv无法.env正确解析文件。

我该如何解决这个问题?

4

3 回答 3

108

到 2019 年年中才有可能。

#以符号开始行。请参阅文档

以 # 开头的行被视为注释。

对于vlucas/phpdotenv也是同样的情况。

肯定不支持内联注释motdotla/dotenv

于 2019-08-08T04:11:50.287 回答
1

问题是不同的换行符。

于 2021-08-26T14:45:05.327 回答
-1

一切都写在 # 或 ; 右边的同一行代码中 是评论。

于 2021-11-02T09:18:24.177 回答