Mat Autocomplete показывает старые значения в динамической форме - PullRequest
0 голосов
/ 07 февраля 2019

У меня есть директива автозаполнения Mat, используемая следующим образом для динамически генерируемой формы ввода:

<mat-list *ngFor="let key of keysList" style="padding-top:0px;">
    <mat-list-item class="editor-list" *ngIf="ifKeyIgnored(key) == false" style="height: 36px;">
    <div class="concept-list-block key-block">{{key}} </div>
    <div class="concept-list-block value-block" style="width:600px !important;">
        <mat-form-field style="width: 550px;">
            <input (focusout)="filteredLookupList=[]" [matAutocomplete]="auto" matInput [(ngModel)]="dataObject[key]" (ngModelChange)="filteredLookupList = setupAutoCompleteData(key, 1)">
                </mat-form-field>
              </div>
            </mat-list-item>
          </mat-list>
          <mat-autocomplete #auto="matAutocomplete">
            <mat-option *ngFor="let val of filteredLookupList" [value]="val.code">
              <span>{{val.code}}</span> |
              <small>Narrative: {{val.narrative}}</small>
            </mat-option>
          </mat-autocomplete>

И мой TS для setupAutoCompleteData равен

setupAutoCompleteData = function(key, num){             
            let searchValue = this.dataObj[key] != null ? ""+this.dataObject[key] : "";
            let searchKey = "dataObj."+key
            this.currentLookupKey = key;
            this.currentLookup = JSON.parse(localStorage.getItem("lookups"))[searchKey]; //this returns an array from an object of lookup values                
            return this.currentLookup.filter(vals => {
                return vals.code.toLowerCase().includes(searchValue.toLowerCase())
            });                             


}

Это прекрасно работает, нопроблема заключается в том, что после редактирования одного ввода и перехода к другому в раскрывающемся списке автозаполнения по-прежнему отображаются значения из первого списка фильтров, пока я не начну печатать в новом поле ввода.Что я могу сделать, чтобы это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...