2016-04-09 15 views
1

Köşeli projemde ng-Giriş etiketlerini kullanıyorum.Ancak anahtar kelimeyi aradığımda, otomatik tamamlama işlemim arama sonuçlarıyla güncellenmiyor. Yöntemimi kontrol ettim, doğru sonuçlara geri dönüyor, ancak otomatik tamamlama açılır menüsünde görünmüyor.ng-tags-input istenildiği gibi çalışmıyor

Bu benim html kodu:

<tags-input ng-model="selectedDrivers" display-property="name" replace-spaces-with-dashes="false" add-from-autocomplete-only="true" placeholder="Search by driver name or driver id.." on-tag-added="emptyScope()"> <auto-complete source="searchDriver($query)" debounce-delay="500"></auto-complete> </tags-input>

Ve bu benim js kodu: Her nasılsa suggestionList güncelleştirilmez

$scope.searchDriver = function(query) { $scope.searchedResults = []; for(var key in $scope.driversInfo){ if($scope.driversInfo[key].name.toLowerCase().indexOf(query.toLowerCase()) >= 0 || $scope.driversInfo[key].id.toString().indexOf(query.toString()) >= 0) $scope.searchedResults.push($scope.driversInfo[key]); } return $scope.searchedResults; };

.

cevap

1

Otomatik tamamlamanın kaynak attirbute bir sözü bekliyor ve bu nedenle $ q kullanmanız gerekiyor.

let result: Array<any> = list.filter(
    (elt: any) => { return elt[property].toLowerCase().indexOf(query.toLowerCase()) !== -1; }); 
    deferred.resolve(result); 
    return deferred.promise; 
İlgili konular