我有一个搜索栏,让用户可以使用角度基于其输入进行过滤。现在,当用户输入的搜索词与数组中的任何内容不匹配时,现在我希望能够显示“Nothing与您的搜索相匹配”的消息。如何知道角度的过滤阵列的长度
我试着用ng-change来监视用户的输入,然后循环遍历数组搜索用户输入的每个参数,但是这并不奏效。这是我的代码示例。
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>
控制器
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
}
})
是否有可能知道过滤数组的长度因此可以显示一个消息?
您可以检查这个答案 - https://stackoverflow.com/questions/15316363/how-to-display-length-of-filtered-ng-repea叔数据?RQ = 1 –