angular - app.module.ts 中的 environment.production 变量始终为真
问题描述
我正在尝试在我的 app.module 文件中设置一个配置设置,以便它根据我是否在生产中而有所不同。
我的environment.ts
文件有
export const environment = {
production: false
};
我的environment.prod.ts
文件有
export const environment = {
production: true
};
在我的app.module.ts
文件中,我正在尝试这样的事情
imports: [
BrowserModule,
AppRoutingModule,
LoggerModule.forRoot({
level: (environment.production ? NgxLoggerLevel.OFF : NgxLoggerLevel.DEBUG)
}),
...
当我在console.log(environment.production)
任何地方做这件事时,它会告诉我这个值是false
我在开发环境中时应有的值。
我的问题是它似乎true
在我的 app.module 文件中起作用。在这种情况下,我试图将我的日志语句设置为在生产环境中禁用,但它们在开发和生产中也被禁用。(如果我翻转我的条件语句,那么它们会在开发和生产中启用)。因此,就好像它在阅读 environment.production 是真实的,但它不应该是真实的。
在 app.module 中不能像这样使用 environment.production 变量,还是我在这里遗漏了其他东西?
解决方案
我直接在 app.module.ts 顶部直接导入生产版本
import { environment } from 'src/environments/environment.prod';
代替
import { environment } from 'src/environments/environment';
推荐阅读
- python - Python HTTPS请求:重试状态码返回API
- java - 数组有三个连续的数字
- reactjs - 保持 redux store 状态不变性的最佳方法是什么?
- python - Python read_csv - ParserError:错误标记数据
- mysql - 指定的密钥太长;最大密钥长度为 767 MariaDB 10.1
- java - Apache POI 通过 XSSF 阅读器读取错误日期格式的 Excel 表格
- android - 打印整个 webview 网页
- asp.net-mvc - 会话状态变量在 MVC Net Core 中消失了吗?什么是替换语法?
- javascript - 将鼠标悬停在从数据库查询中使用 php 生成的表的行上时,在固定位置显示图像
- android - 如何在 Fragment 中设置 TextView 的值?