dotenv 中的“类型错误:无法读取未定义的属性‘配置’”

kye*_*ego 6 node.js typescript dotenv

我试图通过模块访问我的 .env 文件dotenv,但出现以下错误

dotenv.config();
       ^
TypeError: Cannot read property 'config' of undefined
Run Code Online (Sandbox Code Playgroud)

我已经dotenv安装在node_modules和中package.json,我的.env文件位于根文件夹中,我认为一切都写正确,但由于某种原因它不起作用。我尝试过重新安装模块,但没有帮助

小智 16

解决此问题的另一种方法是在 Typescript编译器选项中启用esModuleInterop

打开tsconfig.json并添加这一行:

"esModuleInterop": true,
Run Code Online (Sandbox Code Playgroud)

所以你可以像这样导入它:

import hello from 'hello-world';
Run Code Online (Sandbox Code Playgroud)


Abo*_*zlR 12

尝试以下操作:

require('dotenv').config({path: __dirname + '/.env'})
Run Code Online (Sandbox Code Playgroud)

在打字稿中

import * as dotenv from 'dotenv'
dotenv.config({path: __dirname + '/.env'})
Run Code Online (Sandbox Code Playgroud)

  • 谢谢你!我的问题是导入,从“import dotenv”切换到“import * as dotenv”确实有帮助 (2认同)