Angular Enum in dropdown
Всем привет! Народ помогите что я делаю не так, не могу вставить Enum в dropdown Создал отельный файл :
export enum Level
{
First = 1,
Second
}
Затем у себя в компоненте
export class MyComponent extends BaseComponent {
constructor() {
}
keys = Object.keys;
levels = Level;
isNumber(val) { return typeof val === 'number'; }
}
И после этого уже в html:
<div class="form-group row">
<label for="Level" class="col-sm-2 col-form-label">{{'Level' | translate }}</label>
<div class="col-sm-10">
<select class="form-control" [(ngModel)]="model.level" name="Level">
<ng-container *ngFor="let level of keys(levels)">
<option *ngIf="!isNumber(level)" [ngValue]="Level[level]">{{level}}</option>
</ng-container>
</select>
</div>
Но у меня в выпадающем списке все равно присутствуют значения

Как мне сделать так чтоб в выпадающем списке были только:
First Second
Ответы (1 шт):
Автор решения: V.Malyk
→ Ссылка
В общем после разных попыток, пришел к выводу что проще в компоненте фильтровать свой Enum и сделал следующее:
public LevelList = Object.keys(Level)
.filter(x => typeof this.levels[x] === 'number');
и в html сменил :
<div class="form-group row">
<label for="Level" class="col-sm-2 col-form-label">{{'App.Level' | translate }}</label>
<div class="col-sm-10">
<select class="form-control" [(ngModel)]="model.Level" name="Level">
<ng-container *ngFor="let level of LevelList">
<option [ngValue]="Level[level]">{{level}}</option>
</ng-container>
</select>
</div>
</div>