У меня есть управляемая шаблоном форма с Angular 6. Компонент формы вложен в родительский компонент.В форме у меня есть два поля ввода, где мне нужно выдавать ошибки после запуска компонента (errors.required).Итак, у меня есть источник событий.
Я искал что-то похожее на ngInit (из AngularJs), чтобы я мог вызвать функцию, которая генерирует событие до родительского компонента, но не смог найти.Поэтому вместо этого мне нужно сделать это в компоненте.
Итак, чтобы получить поля ввода в компоненте, я использую ViewChild.
Таким образом, мой компонент выглядит примерно так:
@Component({
selector: 'my-form',
template: ... `<input ... #myInput="ngModel">` ....
})
export class myForm implements OnInit, AfterViewInit {
@ViewChild('myInput') private myInput: ElementRef;
...
...
ngAfterViewInit() {
console.log(this.myInput.errors);
Затем, когда я запускаю приложение, я получаю эту ошибку:
Свойство «ошибки» не существует наtype 'ElementRef <любой>
Я пытался сделать с @ViewChild('myInput', {read: ElementRef})
и console.log(this.myInput.nativeElement.errors);
Все еще получает это сообщение об ошибке.
Теперь, если я только консоль myInput, я не получу сообщение об ошибке, и в консоли я вижу ключ ошибки.Одна вещь, которую я заметил, это показывает в консоли: ngModel {... ... errors: {..
Поэтому я попытался также зарегистрировать myInput.ngModel.errors - все еще получаю ошибку
Есть идеи?
Спасибо.