2

我正在使用 Angular 5 并试图在 Angular Material Form 字段上监听类更改mat-form-field。具体来说,我想知道 AM 的逻辑何时将ng-pristineng-dirtyng-untouchedng-touched和添加ng-invalid到。mat-focusedmat-form-field

我尝试了各种使用@ViewChild,@HostListener并且@HostBinding在 StackOverflow 上找到的方法。以下是mat-form-fieldwith的示例#firstNameRegister

@ViewChild('firstNameRegister') firstNameRegister: ElementRef;
ngDoCheck() {
    if(this.firstNameRegister.nativeElement.classList.contains('ng-dirty')) 
    {
        console.log('Is Dirty');
    }
}

无论采用哪种方法,我都会遇到的问题#firstNameRegister是以某种方式被视为undefined因此.nativeElement呼叫失败。Angular Material 的组件是否有一些特定的东西会阻止它们被观察到类更改?

谢谢!

4

0 回答 0