我正在使用Angular 5并尝试在Angular Material Form字段mat-form-field
上侦听类更改。具体来说,我想知道ng-pristine
,ng-dirty
,ng-untouched
,ng-touched
,ng-invalid
和mat-focused
何时添加到mat-form-field
通过AM的逻辑。
我尝试了使用我在StackOverflow上找到的@ViewChild
,@HostListener
和@HostBinding
的各种方法。以下是mat-form-field
#firstNameRegister
的示例:
@ViewChild('firstNameRegister') firstNameRegister: ElementRef;
ngDoCheck() {
if(this.firstNameRegister.nativeElement.classList.contains('ng-dirty'))
{
console.log('Is Dirty');
}
}
无论方法如何,我得到的问题是#firstNameRegister
被视为undefined
,因此.nativeElement
调用失败。 Angular Material的组件是否有某些特定的东西阻止它们被类变化观察到?
谢谢!