更新:ドキュメントを十分に見ていないと思いますが、この構文 (このフィドルを参照) でフィルターフィルターを使用して、オブジェクトのプロパティでフィルター処理することは間違いありません。
<tr ng-repeat="user in users | filter:{status:4}">
それが誰かを助ける場合に備えて、これが私の元の答えです:
フィルターフィルターを使用すると、パラメーターを渡すことができなくなりますが、できることは少なくとも 2 つあります。
1) スコープ変数でフィルター処理するデータを設定し、この fiddleのようなフィルター関数でそれを参照します。
JavaScript:
$scope.status = 1;
$scope.users = [{name: 'first user', status: 1},
{name: 'second user', status: 2},
{name: 'third user', status: 3}];
$scope.isStatus = function(user){
return (user.status == $scope.status);
};
HTML:
<li ng-repeat="user in users | filter:isStatus">
また
2)この fiddleのようなパラメーターを受け取る新しいフィルターを作成します。
JavaScript:
var myApp = angular.module('myApp', []);
myApp.filter('isStatus', function() {
return function(input, status) {
var out = [];
for (var i = 0; i < input.length; i++){
if(input[i].status == status)
out.push(input[i]);
}
return out;
};
});
HTML:
<li ng-repeat="user in users | isStatus:3">
このフィルターはstatus
、配列内のオブジェクトにプロパティがあることを前提としているため、再利用性が低下する可能性がありますが、これは単なる例です。フィルターの作成の詳細については、こちらを参照してください。