gpt4 book ai didi

angularjs - 通过 bool 属性过滤 Angular 1.2 ng-repeat "track by"

转载 作者:行者123 更新时间:2023-12-03 05:13:37 24 4
gpt4 key购买 nike

我试图根据 bool 属性的值过滤一些列表项,但无论我做什么,整个列表都会显示。我尝试过的一些东西已经损坏,没有任何显示,但这既不在这里也不在那里。我无法让我的过滤按预期工作:

$scope.attendees = [
{"firstname":"Steve", "lastname":"Jobs", "arrived":true, "id":1}
,{"firstname":"Michelle", "lastname":"Jobs", "arrived":false, "id":2}
,{"firstname":"Adam", "lastname":"Smith", "arrived":true, "id":3}
,{"firstname":"Megan", "lastname":"Smith", "arrived":false, "id":4}
,{"firstname":"Dylan", "lastname":"Smith", "arrived":false, "id":5}
,{"firstname":"Ethan", "lastname":"Smith", "arrived":false, "id":6}
];

使用以下 ng-repeat 过滤:

<ul>
<li ng-repeat="person in attendees track by person.id | filter:arrived:'false'">
{{person.lastname}}, {{person.firstname}}
</li>
</ul>

我觉得我已经尝试了我能找到的所有引用排列,其中大部分来自各种 StackOverflow 搜索结果:

  • 过滤器:'到达'
  • 过滤器:已到达
  • 过滤器:'person.arrived'
  • 过滤器:person.arrived
  • 过滤器:{arrived:true}
  • 过滤器:{到达:'true'}
  • 过滤器:{person.arrived:true}
  • 过滤器:{person.arrived:'true'}

我还尝试创建自定义过滤器函数:

$scope.isArrived = function(item) {
return item.arrived;
};

并如此应用它:

  • 过滤器:已到达
  • 过滤器:'isArrived'
  • 过滤器:{isArrived(person)}
  • 过滤器:isArrived(人)
  • 过滤器:'isArrived(person)'

这些似乎都不起作用。我错过了什么?

Here's a plnkr that demonstrates my problem .

最佳答案

track by 需要位于表达式的末尾:

<li ng-repeat="person in attendees | filter: {arrived: false } track by person.id">

关于angularjs - 通过 bool 属性过滤 Angular 1.2 ng-repeat "track by",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21416198/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com