Angular 2 ng2如何在模板中使用TypeScript枚举?

时间:2016-06-30 07:56:32

标签: templates typescript angular angular-ng-if

我有多个不同类型的过滤器组件。 对于类型识别,我想使用带有过滤器类型的枚举。 如果下面的示例有效,如何在模板中使用枚举?

我认为它应该只通过导入我要使用此枚举的组件内部的枚举来工作。

import { FilterType } from './types/FilterType';

并在FilterType.INPUT_SELECTFilterType.INPUT_TEXT这样的模板中使用它,但它确实有效,然后我使用了变量,但它也无效。

<div *ngFor='let filter of filters'>
  <select *ngIf='filter.type === checkType.INPUT_SELECT'>...</select>
  <input *ngIf='filter.type === checkType.INPUT_TEXT'></input>
</div>
...
export class FiltersComponent {
  checkType: FilterType;
  @Input() filters: any[];
}
...
export enum FilterType {
  INPUT_SELECT,
  INPUT_TEXT
}

1 个答案:

答案 0 :(得分:14)

您需要为`checkType:

指定一个值
checkType: any = FilterType;