0

我正在将 .env 添加到我的 Node Express 应用程序中,当我这样做时:

console.log(process.env) 

我看到了一些我没有添加的默认进程 env 变量,以及我添加到我的 .env 文件 (TEST_VAR) 中的一个自定义变量:

{ 
  npm_package_devDependencies_nodemon: '^1.11.0',
  npm_config_version_tag_prefix: 'v',
  TEST_VAR: '12345'
}

但是,当我在下一行时:

console.log(process.env.TEST_VAR)

我得到:

undefined

但是,运行这个:

console.log(process.env.npm_package_devDependencies_nodemon)

返回预期:

'^1.11.0'

我能够解决这个问题:

var envVars = { ... process.env }
console.log(envVars.TEST_VAR)

它实际上输出了我的 .env 文件中设置的值。

在我能够访问似乎存在的变量之前,任何人都可以解释为什么我需要制作副本吗?

4

1 回答 1

0

dotenv要求.env文件采用特定格式,并且不包括 JSON

它看起来更像VARIABLE_KEY=VARIABLE_VALUE。在你的情况下,它看起来像这样

npm_package_devDependencies_nodemon=^1.11.0
npm_config_version_tag_prefix=v
TEST_VAR=12345
于 2019-02-12T22:52:56.810 回答