服务器端查询重新运行以进行分页,排序或筛选

时间:2014-12-16 10:40:18

标签: derbyjs racerjs

当该客户端上的某些数据发生变化时,为特定连接的客户端重新运行服务器查询/订阅的最佳方法是什么?

这对服务器端过滤,排序或分页非常有用。

例如,客户端有一个包含数千行分页的表,当用户更改过滤文本或页码时,服务器将使用该过滤器重新计算查询订阅,并动态更新客户端。

搜索输入不必在服务器的所有连接用户之间同步,因此不需要在数据库中存在。

有没有办法在客户端和服务器上使用传统的模型方法执行此操作,还是必须实现FAQ中提到的类似RPC的方法?

谢谢!

1 个答案:

答案 0 :(得分:0)

var filter = model.root.filter('items', 'temp.pageNumber', function(item, x,y,pageNumber){
   if (item.index > pageNumber*10 && item.index < pageNumber*10+10){
      return true;
   }
   return false;
}
model.root.subscribe(filter,function(){
   model.ref('filteredItems', filter);
});

并绑定到视图中的filteredItems。 像这样的东西。