【发布时间】:2019-09-04 12:07:50
【问题描述】:
我的 NestJs 项目的根目录中有一个 .env 文件,其中包含一些环境变量。
奇怪的是我能够读取服务文件中的变量,但不能读取模块文件中的变量。
所以在像users.service.ts 这样的服务文件中,这是可行的:
saveAvatar() {
const path = process.env.AVATAR_PATH // returns value from .env
}
但是,当访问像 auth.module.ts 这样的模块文件中的路径时,这将返回一个空值:
@Module({
imports: [
JwtModule.register({
secretOrPrivateKey: process.env.SECRET // process.env.SECRET returns an empty string
})
]
})
为什么会这样?如何在 NestJs 中可靠地访问 .env 文件中的环境变量?
【问题讨论】:
-
您在哪里(以及何时)阅读
.env文件? -
@KimKern 我正在读取位于模块文件夹中的模块文件中的文件。 .env 文件位于项目的根目录中。我已经更新了我的问题以显示它们何时被使用。
标签: javascript node.js typescript nestjs dotenv