$过滤多个对象属性不起作用

时间:2014-03-28 08:40:24

标签: angularjs angularjs-filter

我尝试按多个字段过滤对象数组。我的初始代码:

<tr ng-repeat="entry in $data | filter: { package: { cycleId: filterOptions.cycle, status: filterOptions.status }}">

不起作用。有趣的是,第一个过滤器表达式工作(正确更改filterOptions.cycle过滤器)但是当我添加filterOptions.status时出错了。它随机过滤,我找不到模式,但肯定不会通过package.cycleId和package.status过滤我的$ data数组。

但是,当我将过滤更改为此过滤器时:

<tr ng-repeat="entry in $data | filter: { package: { cycleId: filterOptions.cycle } } | filter: { package: { status: filterOptions.status } }">

一切都按预期工作。

我的第一个代码段有什么问题?我问,因为在AngularJS页面上:

http://docs.angularjs.org/api/ng/filter/filter(我使用AngularJS v1.2.14),过滤说

  

对象:模式对象可用于过滤特定属性   数组包含的对象。例如{name:&#34; M&#34;,phone:&#34; 1&#34;}   谓词将返回具有属性名称的项目数组   含有&#34; M&#34;和财产电话包含&#34; 1&#34;。

0 个答案:

没有答案