gpt4 book ai didi

angularjs - ng-repeat过滤器空值不显示

转载 作者:行者123 更新时间:2023-12-02 22:57:17 25 4
gpt4 key购买 nike

为什么当我应用时 Angular 不会显示为空的值:

ng-repeat="p in foo | filter: filter2"

其中filter2是

 $scope.filter2 = function(p){
if (p.state === null){
return p.state;
} else{
return;
}
};

这是我所说的 plnkr:http://plnkr.co/edit/cj3v1fuBu6sHVI7A4qlq?p=preview

当过滤器不为空时,它就会起作用,但我试图只显示空值。我可以尝试将所有空值更改为空值以外的默认值字符串吗?有没有什么地方可以让过滤器处理空值?

最佳答案

您可以过滤空项目,而无需编写自定义过滤器。

使用 plunk 中的代码,这将返回空项:

<ul ng-repeat="p in foo | filter:{state:'!'}" >
<li>{{p.name}}</li>
</ul>

相反,这将返回所有非空项目:

<ul ng-repeat="p in foo | filter:{state:'!!'}" >
<li>{{p.name}}</li>
</ul>

双非运算符将任何值转换为 bool 值:第一个非运算符 ! 将真值转换为 bool 值 false,第二个将 bool 值反转回 true。在我的测试中,过滤器实际上只需使用 state:'' 即可工作,但为了安全起见,我会使用 !!...

关于angularjs - ng-repeat过滤器空值不显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25879507/

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