DataGear 数据可视化分析平台( datagear.tech ) 在新发布的5.4.1
版本中,HTTP数据集新增了附加数据
功能,可配置读取HTTP数据源JSON响应中的部分数据作为数据集附加数据,结合内置表格图表新增的serverSidePaging
选项功能,仅需通过简单的配置,即可为表格添加HTTP数据源服务端分页功能。
本文将介绍如何通过上述特性制作支持服务端分页、关键字查询、单字段排序的HTTP数据源服务端分页数据表格看板。
假设有HTTP数据源,访问地址为http://192.16.1.1:8080/api/data
,接受如下分页查询JSON请求体参数:
javascript
{
pageIndex: 数值, //页索引,以0开头
pageLength: 数值, //页大小
searchKeyword: "...", //可选,查询关键字
order:{ //可选,排序信息
name: "...", //排序名
direction: "..." //排序方向:"asc"、"desc"
}
}
返回如下分页查询结果:
javascript
{
datas: [ { ... }, ... ], //页数据
totalRecords: 数值, //总记录数
...
}
首先,新建一个HTTP数据集HTTP分页查询
,从上述数据源中读取数据:

请求体类型:JSON载荷
请求体:
javascript
{
pageIndex: ${分页索引},
pageLength: ${分页大小},
searchKeyword: <#if 查询关键字??>"${查询关键字}"<#else>null</#if>,
<#if 排序名??>
order:{
name: "${排序名}",
direction: "${排序方向}"
}
</#if>
}
响应数据JSON路径:datas
响应附加数据配置:{ total: "totalRecords" }
参数:
名称 类型 必填
分页索引 数值 是
分页大小 数值 是
查询关键字 字符串 否
排序名 字符串 否
排序方向 字符串 否
上述响应附加数据配置
{ total: "totalRecords" }
表示:将HTTP数据源中的totalRecords
设置为以total
标识的数据集附加数据
然后,新建一个HTTP分页查询表格
表格图表,绑定上述HTTP分页查询
数据集:

编辑其【图表选项】
,通过serverSidePaging
选项将其配置为分页查询表格,具体内容为:
js
{
lengthMenu: [5, 10, 20],
ordering: true,
order: [[ 0, 'asc' ]],
searching: true,
search: { 'return': true },
disableSetting: true,
serverSidePaging: {
param: function(data, chart){
chart.dataSetParamValues(0, [
data.start, data.length,
(data.search.value ? data.search.value : null),
(data.order[0] ? data.order[0].name : null),
(data.order[0] ? data.order[0].dir : null)
]);
},
totalAdditionName: "total"
}
}
上述配置项详细说明请参考DataGear官网文档【dg-chart-options】章节
点击【保存并展示】按钮,打开图表展示页,服务端分页表格制作完成!

官网地址:
源码地址:
GitCode:gitcode.com/datageartec...
Gitee:gitee.com/datagear/da...
Github:github.com/datageartec...