一尘不染

过滤器在ng-repeat中不返回任何内容时如何显示消息-AngularJS

angularjs

当过滤器(ng-repeat)没有返回任何项目时,我想显示一个div(message)。

根据选择框(ng-model)进行过滤。并且某些选择选项没有任何结果,那时用户应该能够在同一位置阅读消息。我可以在这里使用ng-show /
hide吗?怎么样?

谢谢,


阅读 208

收藏
2020-07-04

共1个答案

一尘不染

您还可以将过滤后的数组保存在变量中,然后在ng-show表达式中使用该变量:

<select ng-model="shade" ng-options="shade for shade in shades"></select><br>
<ul>
    <li ng-repeat="c in filteredColors = (colors | filter:shade)">{{c.name}}</li>
</ul>
<div ng-show="!filteredColors.length">No colors available</div>

您可以在此导航器中看到它的实际效果

2020-07-04