在以前的项目中,只有在V层使用过过滤器,前面我也介绍过滤过滤器的使用,但是在angular这么强大的框架,是不可能让我们失望的。在C层controller中同样可以使用过滤器。
问题描述
查询的实现使用了过滤器,然后还要实现分页。这个过滤器如果还是像以前一样在V层使用过滤器,那么就会先实现分页,然后再去查询的时候,分页的数据不会改变。比如查询出10条数据,那么分页获取的数据总数就是10条,然后过滤掉3条,这时页面上就会显示7条数据,但是分页获取的数据总数还是10条,这样就出现了数据的不同步。
解决办法
1.如何在controller使用过滤器?
首先先介绍一下过滤器在controller中的使用。
|
|
首先在开始的时候将$filter注入进来
|
|
然后使用$filter来注入你自己定义的过滤器,第一个括号中是个自己的过滤器的名子,后面的过滤器的参数。值得注意的是,这里我们要将过滤的对象放在第一个参数的位置。
2.解决问题
|
|
原来的过滤器我是这么使用的。现在将过滤器放到controller中。
|
|
这样在每次查询的时候,都先将查询的结果过滤一下,然后再对过滤的结果进行分页,就不会在出现数据对不上的现象了。