Обновление от 19 января
HttpModule.registerAsync()
было добавлено в версии 5.5.0 с этим запросом .
HttpModule.registerAsync({
imports:[ConfigModule],
useFactory: async (configService: ConfigService) => ({
baseURL: this.config.get('API_BASE_URL'),
timeout: 5000,
maxRedirects: 5,
}),
inject: [ConfigService]
}),
Исходное сообщение
Эта проблема обсуждалась в этом выпуске .Для таких модулей nestjs, как TypeOrmModule
или MongooseModule
, был реализован следующий шаблон:
Метод useFactory
возвращает объект конфигурации.
TypeOrmModule.forRootAsync({
imports:[ConfigModule],
useFactory: async (configService: ConfigService) => ({
type: configService.getDatabase()
}),
inject: [ConfigService]
}),
Хотя Камил писал
Вышеупомянутое соглашение теперь применяется во всех модулях гнезда и будет рассматриваться как лучшая практика (+ рекомендация для сторонних модулей).Более подробно в документах
он пока не реализован для HttpModule
, но, возможно, вы можете открыть вопрос об этом.В упомянутой выше проблеме есть и другие предложения.
Также ознакомьтесь с официальными документами с рекомендациями по внедрению ConfigService
.
.