我尝试实现动态配置,如 post 中所示.
在 JiT 编译器中一切正常,但我得到了
ERROR in Error during template compile of 'environment'
Function calls are not supported in decorators but 'Environment' was called.
尝试使用 AoT 编译器构建时。
这是我的 environment.ts
(注意类 Environment 被导出):
export class Environment extends DynamicEnvironment {
public production: boolean;
constructor() {
super();
this.production = false;
}
}
export const environment = new Environment();
我还是想以标准方式使用环境 some.component.ts
:
import { environment } from '../environments/environment';
console.log(environment.config.property);
最佳答案
不要。说真的,远离这两个文件(environment.ts
和 environment.prod.ts
)。这些与“环境”一词的 DevOps 含义无关,它们与调试常量有关。
如果您需要知道您是否正在运行调试版本,请导入 isDevMode :
import { isDevMode } from '@angular/core';
如果您需要动态配置,只需从某处读取 Json 或让服务器端将其作为脚本标记注入(inject),然后直接读取或通过依赖注入(inject)(这并不难做到)。
但是不要弄乱这些文件。相信我,你稍后会感谢我的;)
关于javascript - 在 Angular AoT 编译器中导出变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58616067/