$index 的 ngtable 自定义过滤器,而不是从数据集过滤

托斯姆
  <table ng-table="demo.tableParams" class="table table-condensed table-bordered table-striped">
        <tr ng-repeat="row in $data">
          <td data-title="'Name'" filter="{name: 'text'}">{{$index}}</td>
          <td data-title="'Age'" filter="{age: 'number'}">{{row.age}}</td> 
          <td data-title="'Money'">{{row.money}}</td>
          <td data-title="'Country'" filter="{ country: 'select'}" filter-data="demo.countries">{{row.country}}</td>
        </tr>
      </table>
    </div>

我必须{{$index}}打印出索引号。我知道我可以使用 filter= 轻松过滤,{age: 'number'}但是我不能这样做,$index因为它不是来自 JS 的数据集的一部分。

我希望能够$index通过输入框进行过滤,而不是在加载页面时自动过滤。

格雷格·让马尔

我不认为你可以过滤 $index。但是您可以在渲染表格之前简单地扩展您的数据集。

控制器

$scope.data = [{
    name: 'greg',
    age:29,
    money: 100.10
}, {
    name: 'bob',
    age:30,
    money: 250.00
}];

for(var i = 0; i < $scope.data.length; i++) {
    $scope.data[i].index = i;
}

$scope.table = new NgTableParams({ }, {
    dataset: $scope.data
});

看法:

<table ng-table="table" class="table table-condensed table-bordered table-striped">
    <tr ng-repeat="row in $data">
        <td data-title="'Index'" filter="{index: 'number'}">{{row.index}}</td>
        <td data-title="'Name'" filter="{name: 'text'}">{{row.name}}</td>
        <td data-title="'Age'" filter="{age: 'number'}">{{row.age}}</td>
        <td data-title="'Money'" filter="{money: 'number'}">{{row.money}}</td>
    </tr> </table>

在此处输入图片说明

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章