【发布时间】:2020-03-20 16:05:46
【问题描述】:
我正在将 node.js/express 应用程序移动到 nest.js。
应用程序的配置由节点配置(default.js 和主机特定的 js 文件)处理。
我已将配置文件复制到新的应用程序文件夹,导入配置模块,并使用了一些 config.get() 调用。旧应用程序运行良好,但使用 nest.js 我只能从 default.js 获得设置。有人知道为什么 node-config 不能与 nest.js 一起使用吗?
// main.ts
import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
import * as config from "config";
async function bootstrap() {
const port = Number.parseInt( config.get( "application.port" ), 10 );
console.log( `Server listening on port: ${port}` );
const app = await NestFactory.create( AppModule );
await app.listen( port );
}
bootstrap();
config.get() 总是返回来自 default.js 的值
【问题讨论】:
-
你需要展示一些代码和发生了什么。
node-config似乎在您的项目根目录中期待一个conf目录。 -
两个应用程序的文件夹布局相同 /src/... /config/...nest.js 应用程序似乎找到了该文件夹,因为它从 default.js 返回配置文件夹。
-
Is this the package you are using?就像我说的,查看一些代码和正在发生的事情可能很有用
-
它的这个npmjs.com/package/config 有时有/没有节点的命名有点奇怪。
-
我不确定我是否理解您所说的
host specific js-files的意思,并且看不出您所显示的内容有什么问题。通过查看npm包,它看起来 像config会根据NODE_ENV更改它所提取的内容,如果您有development.js和production.js之类的东西,但没有看到更多,我不能说
标签: node-config