私は角度を使ってエントリに基づいてフィルタリングする検索バーを持っています。今度は、ユーザーが入力した検索語が配列内の何ものとも一致しない場合は、「何も検索に一致しません」というメッセージを表示できるようにします。角でフィルタリングされた配列の長さを知る方法
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 t-data?rq = 1 –