2

在按照此处http://docs.angularjs.org/api/ng.filter:filter的说明进行操作后,我正在尝试将 Angular 过滤器应用于以下数组:

[{"id":"compute-1.amazonaws.com_Delivery","id":"compute-1.amazonaws.com_TaskJob","id":"UpdateFiles","id":"TaskRequest"}]

假设过滤器值为:

  filter = "TaskRequest";


  filter = "Taskjob";


  filter = "UpdateFiles";


  filter = "Delivery";

如何应用 Angular 过滤器:

我努力了:

conData = JSON.stringify(data);
results = $filter('filter')(conData, filter, false);

我也试过:

results = $filter('filter')(conData, filter, true);
results = $filter('filter')(conData, filter);

当我检查过滤器的结果时,没有任何变化,我得到了相同的数组。

因此,如果应用的过滤器是“交付”

结果数组将是:[{"id":"compute-1.amazonaws.com_Delivery"}]

我在这里做错了什么?

4

1 回答 1

0

不确定这是否是复制/粘贴错误,但您在第一个源提取中提供的数组是错误的(或者至少不会像您期望的那样)。如果您仔细观察,键 id 在同一个 JSON 对象中重复出现。尝试使用以下数组:

[
 {"id":"compute-1.amazonaws.com_Delivery"},
 {"id":"compute-1.amazonaws.com_TaskJob"},
 {"id":"UpdateFiles"},
 {"id":"TaskRequest"}
];

顺便说一句,我组装了一个更轻的代码版本,可以在这里访问过滤工作的地方。

于 2013-10-03T18:20:17.280 回答