在以编程方式定义的 ng-table 中使用自定义 Angular 过滤器
Using a custom Angular filter in a programmatically defined ng-table
所以我有一个以编程方式创建的 table,我只想将自定义过滤器应用于其中一个字段。我在这里创建了一个 plunkr:
http://plnkr.co/edit/57rEPEYNylisoHyBysp4
因此,通过将过滤器应用于年龄列,table 将 return:
Name Age
Enos I'm a number greater than 30: 34
Moroni I'm a number greater than 30: 50
Jacob I'm a number less than 30: 27
Nephi I'm a number less than 30: 29
Enos I'm a number greater than 30: 34
Tiancum I'm a number greater than 30: 43
Jacob I'm a number less than 30: 27
Nephi I'm a number less than 30: 29
Tiancum I'm a number greater than 30: 43
Tiancum I'm a number greater than 30: 43
我试过:
<td ng-repeat="column in columns | filter:{ age: numCheck }" ng-show="column.visible" sortable="column.field">
{{user[column.field]}}
</td>
除其他外 HTML。我也尝试过更改控制器中的 getData 函数,但无济于事。
可以这样做吗?
此致,
朱莉
编辑
所以我创建了这个 plunkr,它更接近我在现实生活中想要做的事情(基于以下 Explosion 的回答):
| filter
使用 filter 过滤器,这是不同的东西。相反,您想将您创建的过滤器应用到您正在显示的字符串:
{{user[column.field] | numCheck}}
当然,您需要额外检查一下是否真的要应用过滤器。有很多方法可以做到这一点,但根据您目前设置所有内容的方式,我认为最简单的方法就是检查传递给 numCheck
的值是否为数字。
所以我有一个以编程方式创建的 table,我只想将自定义过滤器应用于其中一个字段。我在这里创建了一个 plunkr:
http://plnkr.co/edit/57rEPEYNylisoHyBysp4
因此,通过将过滤器应用于年龄列,table 将 return:
Name Age
Enos I'm a number greater than 30: 34
Moroni I'm a number greater than 30: 50
Jacob I'm a number less than 30: 27
Nephi I'm a number less than 30: 29
Enos I'm a number greater than 30: 34
Tiancum I'm a number greater than 30: 43
Jacob I'm a number less than 30: 27
Nephi I'm a number less than 30: 29
Tiancum I'm a number greater than 30: 43
Tiancum I'm a number greater than 30: 43
我试过:
<td ng-repeat="column in columns | filter:{ age: numCheck }" ng-show="column.visible" sortable="column.field">
{{user[column.field]}}
</td>
除其他外 HTML。我也尝试过更改控制器中的 getData 函数,但无济于事。
可以这样做吗?
此致, 朱莉
编辑 所以我创建了这个 plunkr,它更接近我在现实生活中想要做的事情(基于以下 Explosion 的回答):
| filter
使用 filter 过滤器,这是不同的东西。相反,您想将您创建的过滤器应用到您正在显示的字符串:
{{user[column.field] | numCheck}}
当然,您需要额外检查一下是否真的要应用过滤器。有很多方法可以做到这一点,但根据您目前设置所有内容的方式,我认为最简单的方法就是检查传递给 numCheck
的值是否为数字。