5

ユーザーが入力したときにサービス呼び出しから入力されるように配線されたオプションを備えた mat-autocomplete コンポーネントがあります (部分検索):

<mat-autocomplete #auto="matAutocomplete" (optionSelected)="areaSelected($event.option.value)">
      <mat-option *ngFor="let option of options" [value]="option">{{ option }}</mat-option>
</mat-autocomplete>

私の TS コードでは、ユーザーが値を選択したときに行う処理の最後に、オプション配列を空の配列に設定しています。

  resetFetchedOptions() {
    this.options = [];
}

これは、コードが呼び出され、this.options が空の配列に設定されているという点で機能します。問題は、ユーザーがフィールドに別の値を入力しようとすると、以前のオプションがまだそこにあることです。入力すると、オプションがクリアされ、部分検索に基づく新しいオプションが入力されるため、これはレンダリングの問題だと思いますが、私はAngular Materialに少し慣れていないので、これが間違ったアプローチであるか、ステップがありません。

ありがとう!

4

2 に答える 2