我从RESTful服务获得以下数据:
[
{
"id": 42,
"type": 0,
"name": "Piety was here",
"description": "Bacon is tasty, tofu not, ain't nobody like me, cause i'm hot...",
}...
Run Code Online (Sandbox Code Playgroud)
我正在使用这个类进行映射:
export enum Type {
Info,
Warning,
Error,
Fatal,
}
export class Message{
public id: number;
public type: Type:
public name: string;
public description: string;
}
Run Code Online (Sandbox Code Playgroud)
但是当我在Angular2中访问'type'时,我只得到一个int值.但是我想获得一个字符串值.
例如:
'message.type=0'
{{message.type}} => should be Info
'message.type=1'
{{message.type}} => should be Warning
Run Code Online (Sandbox Code Playgroud) 我有一个全局变量来存储这样的国家/地区列表:
export var COUNTRY_CODES = ["AD", "AE", "AF" /* and more */];
Run Code Online (Sandbox Code Playgroud)
在我的一个组件中,我使用普通的import语句导入了变量
import { COUNTRY_CODES } from "../constants";
Run Code Online (Sandbox Code Playgroud)
我可以在组件代码中自由访问这个全局变量,但是在HTML模板上无法实现这样的功能:
<option *ngFor="let countryCode of COUNTRY_CODES" [value]="countryCode">{{countryCode | countryName}}</option>
Run Code Online (Sandbox Code Playgroud)
我可以通过定义局部变量将全局变量传递给组件,并在初始化期间为其分配全局变量.
ngOnInit() {
this.countryCodes = COUNTRY_CODES;
}
Run Code Online (Sandbox Code Playgroud)
并更改ngFor此局部变量的to循环以使其工作.
我的问题:这是正确的方法吗?每次我想在模板中使用全局变量时,我都不太习惯定义桥接变量.