Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Js-如何在Sails.Js中分页_Javascript_Node.js_Sails.js_Waterline - Fatal编程技术网

Javascript Js-如何在Sails.Js中分页

Javascript Js-如何在Sails.Js中分页,javascript,node.js,sails.js,waterline,Javascript,Node.js,Sails.js,Waterline,我想使用sails.js、mongodb和waterlineorm创建分页表 在sails.js中有没有特定的分页方法? 如果希望分页异步工作,那么使用JQUERY$$.getJSON和服务器上的res.json()非常容易 水线和帆船文档中有很多信息。还有另一种方法 如果要从前端获取数据,并且已打开blueprint,还可以尝试: 参考: 1.官员站点:您可以使用内置的skip和limit查询蓝图路线参数来构建功能分页器: /api/todos?skip=10&limit=10 使

我想使用sails.js、mongodb和waterlineorm创建分页表

在sails.js中有没有特定的分页方法?

如果希望分页异步工作,那么使用JQUERY
$$.getJSON
和服务器上的
res.json()非常容易


水线和帆船文档中有很多信息。

还有另一种方法

如果要从前端获取数据,并且已打开blueprint,还可以尝试:

参考:
1.官员站点:

您可以使用内置的
skip
limit
查询蓝图路线参数来构建功能分页器:

/api/todos?skip=10&limit=10
使用此选项,您可以根据不同的设备大小动态调整页面大小-此选项将提供
限制
,这基本上是您的页面大小。将(页面大小-1)乘以当前页码-瞧,您得到了
skip
参数

至于如何获取所有项目的数量,我还没有找到一种内置的方法,因此我编写了一个小助手中间件()来以这种方式返回响应JSON中的总计数:

{
    "results": [
        {
            /* result here */
        },
        {
            /* another result here */
        }
    ],
    "totalCount": 80
}
您所需要做的就是通过npm安装中间件,并将其添加到
http.js
中的中间件中

如果您需要一个功能完整的示例,我还提供了一个在github上使用这种分页的示例待办应用程序:。它是用vue编写的,但无论哪种情况,您都应该了解它


请注意,此答案需要sails 1.x.

我认为您也可以使用io来实现:

io.socket.get('/thing', {limit: 30, skip: 30*pageNum}, function(things, jwr) { /*...*/ })

我写了一些蓝图来帮助分页,但是我们如何在同一个查询中得到总数呢?因为我想告诉我的视图是否应该显示“下一步按钮”,并放置“页面”碎屑(如1、2、3、4、5),这太棒了。。。但是为了在前面生成一个函数分页器,我需要得到我的(角度)应用程序的初始值。。。我的意思是:项目总数和每页的项目(如果没有指定,则应为蓝图中的默认项目)。。。。获取这些的正确模式是什么?这在返回总计数的主题上非常好。我来看看你是怎么做到的。理想情况下,我希望在同一个查询中获得totalCount,而无需执行另一个查询来获得totalCount。
io.socket.get('/thing', {limit: 30, skip: 30*pageNum}, function(things, jwr) { /*...*/ })