ОШИБКА TypeError: Не удается прочитать свойство 'name' из undefined в ng-autocomplete angular7? - PullRequest
0 голосов
/ 03 июля 2019

Я реализовал функцию автозаполнения на нашем веб-сайте, у меня есть соответствующий документ, но я получил ошибку выше в консоли. После поиска по любому ключу, который называется API, я получаю результат в массиве, но не отображаю его в html.check ниже кода. неправильно в моем коде?

onChangeSearch(val) {
  this.searchUser = val;
    // do something when input is focused
    var lengthExist = this.searchUser.toString().length;
    if(lengthExist >= 3) {
       //pass the dataparam in the backend....
      var data = {
        "search_key" : this.searchUser,
        "user_id"    : this.loggedUserObject.user_id,
        "search_type" : "3"
      }

      this.filterList(data);
    }  else {
        //pass the dataparam in the backend....
        var data = {
          "search_key" : this.searchUser,
          "user_id"    : this.loggedUserObject.user_id,
          "search_type" : "3"
        }
        this.filterList(data);
    }
  }


  filterList(data  :any) {
    //st API URL here....
    var url =  '/api/common-search';

    //createUser function for create user in DB
    this.service.saveDetail(data, url).subscribe( (data : any) => {
      if(data.status) {
        this.data = data.result;
      } else {
        this.data = [];
      }
    });
}
<div class="ng-autocomplete">
  <ng-autocomplete 
    [data]="data"
    [searchKeyword]="keyword"
    (selected)='selectEvent($event)'
    (inputChanged)='onChangeSearch($event)'
    (inputFocused)='onFocused($event)'
    [itemTemplate]="itemTemplate"
    [notFoundTemplate]="notFoundTemplate">                                 
  </ng-autocomplete>

  <ng-template #itemTemplate let-item>
  <a [innerHTML]="item.name"></a>
  </ng-template>

  <ng-template #notFoundTemplate let-notFound>
  <div [innerHTML]="notFound"></div>
  </ng-template>
 </div>

проверить обновленную скрипку и что не так в моем коде?

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