我有一个这样的用户
[{id:1,name:'name',parent_id:0,type:1},
{id:2,name:'name2',parent_id:0,type:2},
{id:3,name:"name1 child",parent_id:1,type:1}]我尝试根据parent_id和类型id来显示父用户和子用户,例如,id3是id1的子用户,我尝试像这样显示它们
http://jsfiddle.net/U3pVM/689/
感谢你的帮助
发布于 2013-06-05 05:15:03
我把你的小提琴修好了:
http://jsfiddle.net/eQP8S/
<div ng-controller="MyCtrl">
<ol>
<li ng-repeat="user in users | filter:{parent_id:0}">
{{user.name}}
<ol>
<li ng-repeat="child in users | filter:{parent_id:user.id, type:user.type}">
{{child.name}}
</li>
</ol>
</li>
</ol>
</div>您的主要问题是您试图将" filter“过滤器与一个函数一起使用,这是可以的,但该函数不允许接受任何参数。如果您实际上需要创建一个接受参数的过滤器,则必须编写一个自定义过滤器:http://docs.angularjs.org/guide/dev_guide.templates.filters.creating_filters。
但在您的示例中,您可以使用标准的" filter“过滤器,并传递给它将执行您想要的操作的对象。
同样,诅咒你的Angular开发人员创建了一个名为filter的抽象,然后创建了一个" filter“过滤器。我是说,这有多让人困惑?
发布于 2013-06-05 05:16:10
这不是使用过滤器的正确方式。如果您查看文档,您有三个选项:
如果使用第三种情况
<li ng-repeat="child in users | filter:{parent_id: user.id, type: user.type}">此外,还要打印孩子的名字
{{ child.name }}然后,您将看到正确的结果。
http://jsfiddle.net/waAc7/
https://stackoverflow.com/questions/16926823
复制相似问题