我的环境变量未定义

时间:2019-09-30 03:24:50

标签: node.js dotenv

我不确定为什么我的环境变量未定义。这是我第一次使用环境变量,似乎无法弄清问题所在,

我的环境文件是这样的:

# ANSIBLE MANAGED FILE, YOUR CHANGES WILL BE LOST!
PORT=3001
NODE_ENV=development

# PostgreSQL
MY_DATABASE_CLIENT: 'pg'
MY_DATABASE_HOST: '127.0.0.1'

我的模型包含这两行:

require('dotenv').config({path: '/opt/eosapi/.env'});

console.log("ENV VARIABLE CHECK...",process.env.MY_DATABASE_CLIENT);

无论何时运行此文件,我都会得到:

  

ENV变量检查...未定义

有人可以向我指出这个问题吗?

1 个答案:

答案 0 :(得分:1)

尝试删除绝对路径

require('dotenv').config();

然后使用

进行调试
const result = require('dotenv').config()

if (result.error) {
  throw result.error
}

console.log(result.parsed)

使用适当的辅助工具

# ANSIBLE MANAGED FILE, YOUR CHANGES WILL BE LOST!
PORT=3001
NODE_ENV=development

# PostgreSQL
MY_DATABASE_CLIENT='pg'       # <--------- must be =
MY_DATABASE_HOST='127.0.0.1'  # <--------- must be =