У меня есть один сценарий, в котором я использую mat-autocomplete с пользовательским каналом выделения.Все работает нормально, проблема возникает, когда я выбираю значение из автозаполнения, а затем пытаюсь сбросить форму, форма сбрасывается, но значение в автозаполнении все еще подсвечивается.
highlight.pipe.ts
transform(text: string, search): string {
const pattern = search
.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&")
.split(' ')
.filter(t => t.length > 0)
.join('|');
const regex = new RegExp(pattern, 'gi');
return search ? text.replace(regex, match => `<b>${match}</b>`) : text;
}
component.html
<form class="example-form">
<mat-form-field class="example-full-width">
<input matInput placeholder="State" aria-label="State" [matAutocomplete]="auto" [formControl]="stateCtrl">
<mat-autocomplete #auto="matAutocomplete">
<mat-option *ngFor="let state of filteredStates | async" [value]="state.name">
<span [innerHTML]="state.name | highLight: toHighlight"></span>
<span></span>
</mat-option>
</mat-autocomplete>
</mat-form-field>
</form>
Демонстрация Stackblitz
При нажатии кнопки сброса я не хочу выделять какие-либо значения.Есть ли способ исправить эту проблему.
Заранее спасибо