使用ngFor将枚举绑定到选择器中的选项

时间:2018-10-08 12:15:19

标签: angular

我想将枚举绑定为HTML选择器中的选项

    export enum MY_ENUM{
    ONE = 'One',
    TWO = 'Two',
    THREE = 'Three'
}

如何使用ngFor将其绑定为HTML选择的选项

2 个答案:

答案 0 :(得分:1)

我将使用Object.values来获取枚举值的列表,如下所示:

this.options = Object.value(MY_ENUM);

然后在模板中

<select>
  <option *ngFor="let option of options" [value]="option">{{option}}</option>
</select>

答案 1 :(得分:0)

您可以这样做:

<select>
  <option *ngFor="let opt of opts"
  [value]="opt.id" >
  {{opt.name}}
  </option>
</select>

其中opts是您从Enum构建的数组

enum EnumExample {
  OPT1 = "opt1",
  OPT2 = "opt2"
}

export class Example {
  public opts: any[];
  constructor(){
    this.opts = [
      {id: "OPT1", name=EnumExample.OPT1},
      {id: "OPT2", name=EnumExample.OPT2}];

  }
}

我没有找到直接从Enum做的方法。