Javascript Angular.js。如何计算满足自定义筛选器的ng重复迭代次数
这是我的密码:Javascript Angular.js。如何计算满足自定义筛选器的ng重复迭代次数,javascript,angularjs,ng-repeat,Javascript,Angularjs,Ng Repeat,这是我的密码: <div ng-show="?" ng-repeat="item in items | notEmpty"> </div> 过滤器: Kb.filter("notEmpty", function(){ return function(input){ var output=[]; for(var i=0;i<input.length;i++){ if(input[i]){ output.push(
<div ng-show="?" ng-repeat="item in items | notEmpty">
</div>
过滤器:
Kb.filter("notEmpty", function(){
return function(input){
var output=[];
for(var i=0;i<input.length;i++){
if(input[i]){
output.push(input[i]);
}
}
return output;
}});
Kb.filter(“notEmpty”,function(){
返回函数(输入){
var输出=[];
对于(var i=0;i而言,最简单的方法可能是在控制器中运行过滤器。类似于以下内容:
function MyCtrl($scope, notEmptyFilter)
{
//$scope.items is put into the scope somehow
$scope.filteredItems = notEmptyFilter($scope.items);
}
<div ng-show="filteredItems.length > 0" ng-repeat="item in filteredItems">
</div>
然后,您的HTML将如下所示:
function MyCtrl($scope, notEmptyFilter)
{
//$scope.items is put into the scope somehow
$scope.filteredItems = notEmptyFilter($scope.items);
}
<div ng-show="filteredItems.length > 0" ng-repeat="item in filteredItems">
</div>
ng repeat
表达式允许将筛选结果分配给变量。可以从当前范围访问此变量,以便您可以在同一范围内任意使用它:
筛选项目数:{{filteredItems.length}
{{$index}}
我找到了这个
,
这描述了从Angular 1.3开始,要在筛选列表后获取计数,您可以使用以下语法进行ng repeat
:
variable in expression as alias_expression
即:
<p>Number of filtered items: {{filteredItems.length}}</p>
<div ng-repeat="item in items | notEmpty as filteredItems">
...
</div>
筛选项目数:{{filteredItems.length}
...
谢谢。我不知道我能做这样的语法:ng repeat=“filteredItems=(items | notEmpty)
谢谢!真不敢相信我们有这样一个语法,到底是谁发明了这样一个语法?疯了,不是吗?
从Angular 1.3开始,您可以在表达式中使用变量作为alias_表达式
完美。工作正常。谢谢。