Here's simple solution for those who want a quick filter against an object:
<select>
<option ng-repeat="card in deck.Cards | filter: {Type: 'Face'}">{{card.Name}}</option>
</select>
The array filter lets you mimic the object you are trying to filter. In the above case, the following classes would work just fine:
var card = function(name, type) {
var _name = name;
var _type = type;
return {
Name: _name,
Type: _type
};
};
And where the deck might look like:
var deck = function() {
var _cards = [new card('Jack', 'Face'),
new card('7', 'Numeral')];
return {
Cards: _cards
};
};
And if you want to filter multiple properties of the object just separate field names by a comma:
<select>
<option ng-repeat="card in deck.Cards | filter: {Type: 'Face', Name: 'Jack'}">{{card.Name}}</option>
</select>
EDIT: Here's a working plnkr that provides an example of single and multiple property filters: