如何在angularJS中过滤多个值(OR操作)

如何在angularJS中过滤多个值(OR操作)

我想用filter在角和希望筛选多个值,如果它有其中一个值,那么它应该显示。

例如,我有这样的结构:

对象movie有财产的genres我想过滤ActionComedy.

我知道我能做到filter:({genres: 'Action'} || {genres: 'Comedy'}),但是如果我想要动态过滤它,该怎么办。例如:filter: variableX

我该怎么做variableX$scope,当我有一个类型数组,我必须过滤?

我可以将其构造为字符串,然后执行eval()但我不想用val().。


浮云间
浏览 930回答 3
3回答

RISEBY

在这里创建自定义筛选器可能会导致过度,您只需传入一个自定义比较器,如果您有如下所示的倍数值:$scope.selectedGenres = "Action, Drama"; $scope.containsComparator = function(expected, actual){     return actual.indexOf(expected) > -1;};然后在过滤器中:filter:{name:selectedGenres}:containsComparator
打开App,查看更多内容
随时随地看视频慕课网APP