Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Templates Angular 2 ng2如何在模板内使用TypeScript枚举?_Templates_Typescript_Angular_Angular Ng If - Fatal编程技术网

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

Templates Angular 2 ng2如何在模板内使用TypeScript枚举?,templates,typescript,angular,angular-ng-if,Templates,Typescript,Angular,Angular Ng If,我有多个不同类型的过滤器组件。 对于类型识别,我想将枚举与过滤器类型一起使用。 当下面的示例不起作用时,如何在模板内使用枚举 我认为它应该只在我想要使用这个枚举的组件中导入枚举 import { FilterType } from './types/FilterType'; 在模板中使用它,比如FilterType.INPUT\u选择和FilterType.INPUT\u TEXT但它不起作用,然后我使用了变量,但它也不起作用 <div *ngFor='let filter of fil

我有多个不同类型的过滤器组件。 对于类型识别,我想将枚举与过滤器类型一起使用。 当下面的示例不起作用时,如何在模板内使用枚举

我认为它应该只在我想要使用这个枚举的组件中导入枚举

import { FilterType } from './types/FilterType';
在模板中使用它,比如
FilterType.INPUT\u选择
FilterType.INPUT\u 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
}

...
...
导出类过滤器组件{
检查类型:FilterType;
@Input()过滤器:任意[];
}
...
导出枚举筛选器类型{
输入(u选择),,
输入文本
}

您需要为“checkType:

checkType: FilterType = FilterType;

类型“typeof FilterType”不可分配给类型“Type”抱歉,我假设对枚举的引用的类型为
类型
。我不太清楚,我只在本地使用飞镖。您可以使用
任何
<代码>对象
也应该可以工作。它可以工作,但现在我在不同的视图中看到它,我将把这个枚举作为参数传递。谢谢。您可以将类型更改为
checkType:FilterType=FilterType或只是
checkType=FilterType