В таком случаи нужно писать специальный фильтр
app.filter('filterMaterials', function () {
return function (materials, wood, plastic) {
var filteredMaterials = [];
for (var i = 0; i < materials.length; i++) {
if (materials[i].type === wood || materials[i].type === plastic) {
filteredMaterials.push(materials[i]);
}
}
return filteredMaterials;
};
});
а писать это в html нужно так добавляя друг за другом, как бы piping... таким обзаром можно передать сколько угодно параметров в фильтр... и на фильтре тоже нужно сделать добавления этих параметров..
<tr data-ng-repeat="material in materials | filterMaterials:search.wood:search.plastic">
<td>{{material.name}}</td>
<td>{{material.type}}</td>
<td>{{material.price}}</td>
</tr>
<input type="checkbox" data-ng-model='search.wood'/>
<input type="checkbox" data-ng-model='search.plastic'/>
Надеюсь вам это поможет понять.