2016-12-07 48 views
0

过滤我怎样才能过滤基于在ng-repeat在物体上的阵列的结果。我想,以滤除对象看起来是这样的:我怎样才能由其他对象在angularjs

{ 
    [ 
    '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' 
] 
+0

我没有看到任何多维数组。它的一个对象和属性保存着数组 – Rajesh

+0

刚刚更新了我的问题,对不起!我猜这有点令人困惑。 –

+0

'{'German','French'},'不是数组。把它改成你'['German','French']' – Jhecht

回答

-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 对象):

+0

该对象不是我想要过滤的对象,但我想要一个基于该对象的数组。 –