gpt4 book ai didi

javascript - AngularJS 中的多条件过滤器

转载 作者:行者123 更新时间:2023-12-03 11:09:31 24 4
gpt4 key购买 nike

我有一个 ng-repeat 列表,显示对象的集合。我已经实现了一个过滤器,使列表仅显示今天插入的对象。它看起来像这样:

<div class="row msf-row" 
ng-repeat="record in recordlist | filter: record.date = dateJson">

这太棒了。我的问题是,我想显示今天记录的两个对象,以及没有属性到达的记录(因为它们可能是昨天引入的,但需要将它们标记为到达)。

我已经尝试过了,但直到今天 00:00 才知道它是否正确。

<div class="row msf-row" 
ng-repeat="record in recordlist |
filter: record.date = dateJson ||
record.date != dateJson && !record.arrival">

这有意义吗?

最佳答案

当标记中的表达式开始变得过度紧张时,就该重构了。您应该在 Controller 中定义一个函数来执行您想要的检查:

$scope.shouldShow = function(record) {
return record.date == dateJson ||
(recode.date != dateJson && !record.arrival);
}

(注意:这个条件是多余的;您可以将其缩短为):

    return record.date == dateJson || !record.arrival;

然后在过滤器中使用它:

<div class="row msf-row" ng-repeat="record in recordlist | filter:shouldShow">

这将允许您更新逻辑而无需编辑 View 。

关于javascript - AngularJS 中的多条件过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27676083/

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