Javascript 第二次使用过滤器返回空数组时angularjs ng重复
关于angularjs的学习过程,我刚刚创建了一个带有分页的表。这是密码 HTMLJavascript 第二次使用过滤器返回空数组时angularjs ng重复,javascript,angularjs,Javascript,Angularjs,关于angularjs的学习过程,我刚刚创建了一个带有分页的表。这是密码 HTML <table class="table"> <thead> <tr> <th>ID</th> <th>NAME</th> <th>EMAIL</th> </tr> </th
<table class="table">
<thead>
<tr>
<th>ID</th>
<th>NAME</th>
<th>EMAIL</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="user in data | range:selectedPage:pageSize">
<td>{{user.id}}</td>
<td>{{user.name}}</td>
<td>{{user.email}}</td>
</tr>
</tbody>
</table>
<div class="pull-right btn-group">
<a ng-repeat="page in data | filter:pageCount:pageSize" ng-click="selectPage($index + 1)" class="btn btn-default" ng-class="getPageClass($index + 1)">
{{$index + 1}}
</a>
</div>
</div>
身份证件
名称
电子邮件
{{user.id}
{{user.name}
{{user.email}
我试着控制范围
过滤器,但我看到它运行了两次。
第一次使用3行数据,第二次使用空数组。由于返回空数组,所以不绘制表
我可以知道为什么它返回空数组而不是3数组。如何克服这个问题
pageCount
过滤器也没有按预期工作,但是这里的pageCount
过滤器甚至没有运行一次
<tr ng-repeat="user in data | range:user:selectedPage:pageSize">
您没有向筛选器发送数据。更新此。也许它会帮助您(y)我发现了错误。我使用的是splice
方法,它直接作用于源阵列本身
虽然筛选器不会影响$scope.data,但会影响指令数据。由于筛选器多次运行,它会一次又一次地删除数据,从而导致空数组。因此,不绘制表格
$filter("limitTo")(data.splice(start_index), size);
至
$filter("limitTo")(data.slice(start_index), size);
这是更新的谢谢您的帮助。但是数据由管道自动发送到过滤器。如果要对多个数据使用过滤器,则必须使用如下语法{{yourExpression | yourFilter:arg1:arg2:…}}检查一下。。它会帮助你的
$filter("limitTo")(data.slice(start_index), size);