我使用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文件.

我该怎么解决这个问题?

推荐答案

可能在2019年年中.

#符号开始.见the docs:

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

对于vlucas/phpdotenv人来说,情况也是一样的.

内联注释在motdotla/dotenv分钟内肯定不受支持.

Node.js相关问答推荐

已知NPM无法在node.js V12上运行的问题

为什么在导出的函数中调用node-sqlite3中的数据库方法时不起作用?

FireStore事务似乎已允许并发编辑?

如何获取mongoose中单个id数据的记录

try 使用 pdf.js 时 pdf.getPage 不是函数

处理 UTC 日期和future

多字段传递获取查询失败

Zod 模式中的self 数组

在将用作 nodejs/expressjs 中的中间件的函数中使用 keycloak.protect()

在新创建的 Angular 工作区上运行 ng lint 时出错

我怎样才能让`git`失败而不是要求提供凭据

Winston http 日志(log)级别的行为与 info 不同

无法通过谷歌Electron 表格 api( node js)中的服务帐户访问写入

在 gatsby 中安装软件包时不推荐使用的错误

如何在 node.js 环境中从 WebAssembly (Rust) 调用异步 JavaScript 导入函数?

通过 npm 导入 Sass

Connect/Express 中的session和cookieSession中间件有什么区别?

我可以有条件地将 where() 子句添加到我的 knex 查询吗?

处理快速异步中间件中的错误

Node.js 连接仅适用于本地主机