在angular4中的静态文件中使用static和public

时间:2017-07-24 03:05:41

标签: angular

我遇到有线情况我导入了我的config.ts但我的控制器找不到我的方法。

config.ts

export class Config {
  static testforStatic = `show static`;
  public testforpublic = `show public`;
}

mycomponent.component.ts

import {Config} from 'config';
private configwhennew: Config = new Config();
ngOnInit() {
  console.log(`${Config.testforStatic} `);
  console.log(`${configwhennew.testforpublic} `);
}

在我上课之前,它只是静态但不能返回公共变量。

因此,在new之后,静态不起作用是有效的。有人可以解释发生了什么?

1 个答案:

答案 0 :(得分:0)

避免所有这些混乱的更好的实现是将您的类更改为const。

这会使您的配置更改如下:

export const Config {
  testforStatic: `show static`,
  testforpublic: `show public`
}

然后只需像您一样导入配置,并使用Config.testForStaticConfig.testforpublic引用属性。

检查环境变量的Angular标准可能是值得的。这是一个很好的阅读 - https://medium.com/beautiful-angular/angular-2-and-environment-variables-59c57ba643be