尽管文档显示这样做,但仍无法为.env设置ConfigModule

时间:2020-08-28 17:06:30

标签: typescript environment-variables nestjs

我正在按照https://docs.nestjs.com(特别是https://docs.nestjs.com/techniques/configuration)上的文档说明设置ConfigModule

这是我的文件的样子:

enter image description here

这是我的app.module.ts(按照文档说明设置ConfigModule)的样子,

enter image description here

这是我的.development.env文件的内容:

enter image description here

这是我的configuration.ts文件的内容:

enter image description here

要进行测试,请按以下步骤设置app.controller.ts:

enter image description here

这就是问题所在,就像我说的是按照文档说明设置ConfigModule一样,它确实会加载configure.ts,因为我获得了port的默认值3000,但没有从那里获得SERVER_PORT值8000。 env文件,所以我的问题是ConfigModule无法找到.env文件。我刚开始使用.env文件和NestJS,目前正在关注文档,但我不知道我是否做过文档指示错误的操作,或者是否有文档未指定必须执行的操作。我在网上搜索过,找不到类似的问题或ConfigModule的示例用法,可以通过它们查看我所缺少的内容。

我注意到构建NestJS时dist中没有.env,所以我假设问题是dist中没有内置.env,但是正如我所说的,我是.env和NestJS的新手,我也对此进行了查找也是一个问题,无法弄清楚要构建.env文件我必须做什么。

1 个答案:

答案 0 :(得分:2)

.env文件应位于项目的根目录(与package.json相同级别)中,而不要与源代码(您的src目录)在一起。如果将其移至项目的根目录,则应该可以正常工作。