Предлагаемый «хак» отлично работает, если у вас всегда есть компонент автозаполнения, но иногда нет элементов для него.Но похоже, что вы хотите создать пользовательский компонент на основе MatFormField и MatInput, который может дополнительно использовать MatAutocomplete.Я сделал это, и нет никакого способа обойти ngIf в поле формы, если вы не используете будущую версию Angular Material v6.См. https://github.com/angular/material2/issues/11096 (мой выпуск).Они исправят это в Angular Material v6 с помощью новой опции директивы для отключения автозаполнения - matAutocompleteDisabled
.После освобождения вы можете сделать следующее:
<input matInput [matAutocomplete]="auto" [matAutocompletDisabled]="slide.checked">
Поэтому, если auto
равно нулю, вы не получите никаких ошибок.