Ich habe eine Suchleiste, mit der Benutzer basierend auf ihrem Eintrag mit eckigen filtern können. Jetzt möchte ich in der Lage sein, eine Nachricht wie "Nichts passt zu deiner Suche" anzuzeigen, wenn das vom Benutzer eingegebene Suchwort nichts mit dem Array übereinstimmt.Wie kann man die Länge eines gefilterten Arrays im Winkel kennen?
Ich versuchte, die Eingabe eines Benutzers mit ng-change zu überwachen und dann durch das Array durch die einzelnen Parameter für die Benutzereingabe zu durchlaufen, aber das geht nicht. Hier ist ein Beispiel meines Codes.
html
<input ng-model="search" ng-change="check(search)">
<h4 ng-if="found === 0 ">Nothing matches your search</h4>
<div ng-controller="imCtrl" ng-repeat="imprest in imprests | filter:search">
<h2>{{imprest.name}}</h2>
</div>
Controller
var office = angular.module('Office');
office.controller('imCtrl',[$scope,function('$scope'){
$scope.imprests = [
{name:'John'},
{name:'Peter'}
]
$scope.check = function (word) {
var found = 0
$scope.searching = true
for (var i = 0; i < $scope.vendorForms.length; i++) {
if($scope.imprests[i].name.includes(word){
found++
}
}
$scope.found = found
$scope.searching = true
$scope.done = true
}
})
Ist es möglich, die Länge des gefilterten Arrays, also kann ich eine Meldung angezeigt?
Sie diese Antwort überprüfen - https://stackoverflow.com/questions/15316363/how-to-display-length-of-filtered-ng-repea t-Daten? rq = 1 –