如何在angularjs中

时间:2016-12-07 05:11:53

标签: javascript angularjs multidimensional-array

如何基于ng-repeat中的对象过滤数组的结果。我想过滤的对象如下所示:

{
    [
    'gender': 'male',
    'languages': ['German', 'English'],
    'country': 'Marocco'
    ],
    [
    'gender': 'female',
    'languages': ['German', 'French'],
    'country': 'Kosovo'
    ]
} 
| filter:{'languages': ['Urdu', 'French'], 'country': ['Kosovo']}

结果:

[
'gender': 'female',
'languages': ['German', 'French'],
'country': 'Kosovo'
]

1 个答案:

答案 0 :(得分:-1)

例如,选择其中包含字母e的所有单词,我们可以像这样运行我们的过滤器:

{{ ['Ari', 'Lerner', 'Likes', 'To', 'Eat', 'Pizza'] | filter:'e' }}
<!-- ["Lerner","Likes","Eat"] -->

如果我们想要过滤对象,我们可以使用对象过滤器表示法。例如,如果我们有一组人物对象及其喜爱的食物清单,我们可以像这样过滤它们:

{{ [{
'name': 'Ari',
'City': 'San Francisco',
'favorite food': 'Pizza'
}, {
'name': 'Nate',
'City': 'San Francisco',
'favorite food': 'indian food'
}] | filter:{'favorite food': 'Pizza'} }}

<!-- [{"name":"Ari","City":"San Francisco","favorite food":"Pizza"}] -->

我们也可以根据我们定义的函数进行过滤(在本例中,包含$ scope) 对象):