I have a component that should choose beetween two mat-autocomplete depending an input value.
Both mat-autocomplete works without the ngIf, but when include it they stop working, I see "[object Object]" and it crashes when clicking:
Error: Attempting to open an undefined instance of `mat-autocomplete`. Make sure that the id passed to the `matAutocomplete` is correct and that you're attempting to open it after the ngAfterContentInit hook.
<div *ngIf="grouped;then grouped else notGrouped">
</div>
<ng-template #grouped>
<mat-autocomplete #auto="matAutocomplete" [displayWith]="inputDisplay" >
<mat-optgroup *ngFor="let group of groupedItems" [label]="group.searchString">
<mat-option *ngFor="let item of group.items" [value]="item">
{{ item.search }}
</mat-option>
</mat-optgroup>
</mat-autocomplete>
</ng-template>
<ng-template #notGrouped>
<mat-autocomplete *ngIf="!grouped" #auto2="matAutocomplete" [displayWith]="inputDisplay">
<mat-option *ngFor="let item of filteredItems" [value]="item">
{{ item.search }}
</mat-option>
</mat-autocomplete>
</ng-template>
Is it not possible to include mat-autocomplete in an ngIf?