Nestjs:无法读取 'env' 文件变量
Nestjs: Unable to read 'env' file variables
我无法读取应用程序模块中的 env 文件变量。很奇怪我可以在“main.ts”文件中访问这些变量。
这是应用程序模块中的代码:
console.log(process.env.DB_URI); // logs undefined
@Module({
imports: [
ConfigModule.forRoot({
envFilePath: ['.env'],
isGlobal: true,
cache: true,
}),
UsersModule,
FoodItemsModule,
MacroCalculatorModule,
MongooseModule.forRoot(process.env.DB_URI),
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {}
问题是,如果您在应用程序模块中调用 process.env
,它只会在您的 Nest 依赖项初始化后可用。
示例:
`console.log(process.env.DB_URI);` // logs undefined because your dependencies are not
//intialized
@Module({
imports: [
ConfigModule.forRoot({
envFilePath: ['.env'],
isGlobal: true,
cache: true,
}),
UsersModule,
FoodItemsModule,
MacroCalculatorModule,
MongooseModule.forRoot(process.env.DB_URI),
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {
console.log(process.env.DB_URI); // THIS WILL LOG YOUR INFORMATION, because it is
// called after dependecies are intialized.
}
希望这能解决您的问题。
我无法读取应用程序模块中的 env 文件变量。很奇怪我可以在“main.ts”文件中访问这些变量。
这是应用程序模块中的代码:
console.log(process.env.DB_URI); // logs undefined
@Module({
imports: [
ConfigModule.forRoot({
envFilePath: ['.env'],
isGlobal: true,
cache: true,
}),
UsersModule,
FoodItemsModule,
MacroCalculatorModule,
MongooseModule.forRoot(process.env.DB_URI),
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {}
问题是,如果您在应用程序模块中调用 process.env
,它只会在您的 Nest 依赖项初始化后可用。
示例:
`console.log(process.env.DB_URI);` // logs undefined because your dependencies are not
//intialized
@Module({
imports: [
ConfigModule.forRoot({
envFilePath: ['.env'],
isGlobal: true,
cache: true,
}),
UsersModule,
FoodItemsModule,
MacroCalculatorModule,
MongooseModule.forRoot(process.env.DB_URI),
],
controllers: [AppController],
providers: [AppService],
})
export class AppModule {
console.log(process.env.DB_URI); // THIS WILL LOG YOUR INFORMATION, because it is
// called after dependecies are intialized.
}
希望这能解决您的问题。