2016-06-30 17 views
5

Farklı türlerde birden çok filtre için bileşenim var. Tür tanıma için enum'u filtre türleriyle kullanmak istiyorum. Aşağıdaki örnek çalışmadığında enum şablonun içinde nasıl kullanılır?Köşeli 2 ng2 Şablonun içinde TypeScript enum nasıl kullanılır?

Bu enumu kullanmak istediğim bileşen içinde yalnızca enum içe aktarılarak çalışılması gerektiğini düşündüm.

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

FilterType.INPUT_SELECT ve FilterType.INPUT_TEXT gibi şablonu içinde kullanmak ama işi does'nt Sonra değişken ama aynı zamanda Doğru ve dengeli çalışma kullanılır.

<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 
} 

cevap

8

Sen checkType `bir değer atamak gerekir:

checkType: any = FilterType; 
+0

Tipi 'typeof Filtertype' Maalesef ben bir enum bir referans Çeşidi olacağını kabul 'Türü'nüzü –

+0

yazmanız atanamama 'Type'. TS'yi çok iyi tanımıyorum sadece yerel olarak Dart kullanıyorum. Herhangi birini kullanabilirsiniz. 'Nesne' de çalışmalıdır. –

+1

Çalışıyor ama şimdi farklı görünümde görüyorum, bu enum'u parametre olarak geçireceğim. Teşekkürler. –

İlgili konular