我有一個枚舉,將枚舉值傳遞給角2組件
並希望從模板傳遞枚舉值。這怎麼可能?
export enum FIELDS {
GENDER = <any>'Gender',
SALUTATION = <any>'Salutation',
FIRSTNAME = <any>'First Name',
LASTNAME = <any>'Last Name',
EMAIL_ADDRESS = <any>'Email Address',
COUNTRY = <any>'Country',
}
我的模板。在這裏我想通過枚舉值
[ngClass]="{'error':validate(FIELDS.COUNTRY)}"
//這將引發錯誤:無法獲取未定義或空引用的屬性COUNTRY。
我的組件:
@Component({
selector: 'row-general',
template: require('./modify-invalid-row-general.component.html'),
styleUrls: ['./app/nedit/modify-invalid-row/modify-invalid-row.component.css']
})
export class ModifyInvalidRowGeneralComponent {
@Input() row: UploadRow;
@Input() columns: ConfigColumn[];
@Output() validateRow = new EventEmitter<UploadRow>();
public validate(field: string): boolean {
let invalidFields: string[] = [];
if (this.row.invalidFields != null)
invalidFields = this.row.invalidFields.split(';');
for (let i = 0; i < invalidFields.length; i++) {
if (invalidFields[i].trim() == field.trim())
return true;
}
return false;
}
如果我normaly打電話FIELDS.COUNTRY在我得到的值 '國家' 的組成部分。這就是我所需要的。
有人知道,我怎麼能通過枚舉值?
Thx提前
枚舉都不能在運行 –
可以有別的選擇嗎? – trap
顯示組件的完整代碼 –