Angularjs ng-repeat过滤所有数据,而不仅仅是过滤结果



嗨,我是 angularjs 的新手,我只是有问题要问。

这是我的ng重复代码。

<ul ng-repeat="todo in filteredData | filter:search">

似乎此代码只会过滤过滤的数据,而不是所有数据本身。

filteredData 总是等于 10,因为我在 angularjs 中使用分页。

现在我的问题是有没有办法过滤所有数据而不仅仅是过滤的数据?我试过了

<tr ng-repeat="todo in filteredData | filter:alldata:search">

但行不通。

谢谢

执行此操作的最佳方法是将分页创建为筛选器。那么你的代码将是

<tr ng-repeat="todo in alldata | filter:search | pagination:pageNum:perPage">

分页过滤器:

module.filter('pagination', function(){
  return function(array, page, perPage){
    return array.slice(page * perPage, (page+1) * perPage);
  }
});

完整的工作代码笔在这里:http://codepen.io/SimeonC/pen/gbpqNM?editors=101(请原谅玉和咖啡脚本 - 编辑器上方的眼睛向您展示编译后的 HTML/JS)

你可以

使用这样的东西,假设你的完整数据列表存储在

$scope.allData

然后你可以在你的<li>中使用

<li ng-repeat="todo in filterdData = (allData | filter:search)"> </li>

相关内容

最新更新