app.module.ts 中的environment.product变量始终为true

abn*_*317 3 angular angular7

我试图在我的 app.module 文件中设置一个配置设置,以便它根据我是否在生产中而有所不同。

我的environment.ts文件有

export const environment = {
  production: false
};
Run Code Online (Sandbox Code Playgroud)

我的environment.prod.ts文件有

export const environment = {
  production: true
};
Run Code Online (Sandbox Code Playgroud)

在我的app.module.ts文件中我正在尝试这样的事情

imports: [
    BrowserModule,
    AppRoutingModule,
    LoggerModule.forRoot({
      level: (environment.production ? NgxLoggerLevel.OFF : NgxLoggerLevel.DEBUG)
    }),
...
Run Code Online (Sandbox Code Playgroud)

当我console.log(environment.production)在任何地方执行操作时,它都会告诉我这个值false在我处于开发环境中时应该是这样的。

我的问题是它的行为似乎与true我的 app.module 文件中一样。在这种情况下,我尝试将日志语句设置为在生产环境中禁用,但它们也在开发和生产中被禁用。(如果我翻转条件语句,那么它们就会在开发和生产中启用)。因此,就好像它读取的环境.生产是真实的,而它不应该是真实的。

能否在 app.module 中像这样使用environment.product变量,或者我在这里遗漏了其他内容吗?

abn*_*317 7

我直接在 app.module.ts 的顶部直接导入生产版本

import { environment } from 'src/environments/environment.prod';
Run Code Online (Sandbox Code Playgroud)

代替

import { environment } from 'src/environments/environment';
Run Code Online (Sandbox Code Playgroud)