我想要实现的目标:
列出数组中的每个值,而不显示空(Null)值.
列出数组中的每个值,而不显示空(Null)值.
例如项目#1,项目#1,项目#2
目前的问题:
我已尝试过几个过滤器来完成此任务,但我无法删除空列表项(参见图表).
提前感谢您的任何帮助/帮助.
控制器JS:
$scope.array = ["Item #1","Item #1","","Item #2"];
HTML:
<md-list> <md-list-item class="md-3-line" ng-repeat="item in array track by $index"> <div class="md-list-item-text"> <p>{{item}}</p> </div> <md-divider ng-if="!$last"></md-divider> </md-list-item> </md-list>
视觉:
解决方法
您只需添加自定义过滤器,并在应用程序的任何位置使用它.这是一个很好的解决方案,因为标准滤波器的行为因angularJS的版本而异.代码就是这样的:
.filter('emptyFilter',function() { return function(array) { var filteredArray = []; angular.forEach(array,function(item) { if (item) filteredArray.push(item); }); return filteredArray; }; }
<ul> <li ng-repeat="item in array | emptyFilter"> <p>{{item}}</p> </li> </ul>