gpt4 book ai didi

javascript - 过滤 AngularJS 模板中的嵌套列表并获取过滤数据的计数

转载 作者:行者123 更新时间:2023-11-27 23:57:12 26 4
gpt4 key购买 nike

是否可以使用 AngularJS 过滤嵌套列表并计算过滤后的嵌套项目返回的数量?

目标是通过 read:true 过滤每个项目。

这是数据:

guest = [
{"id":148,"guest":2,"user":1,"read":true},
{"id":147,"guest":2,"user":1,"read":false},
{"id":58,"guest":2,"user":1,"read":false}
]

这个数组称为guest,数组中的每一项都是一个消息

模板过滤器语法会像这样吗?

{{ (for m in guest.messages | filter: m.read: true).length }}

这里的关键是这个不使用ng-repeat。关于如何使用 ng-repeat 执行此操作有很多答案,但没有关于如何在单个语句中过滤嵌套列表。

这在模板中可能吗,或者也许唯一的方法是在 Controller 中?

提前致谢

最佳答案

从 View 中代码可读性的 Angular 来看,简单的自定义过滤器可能是最好的

app.filter('numRead', function(){
return function(guestArr){
return guestArr.filter(function(guest){
return guest.read;
}).length
}
});

用法:

Read count = {{guest| numRead}}

DEMO

关于javascript - 过滤 AngularJS 模板中的嵌套列表并获取过滤数据的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32168365/

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