如何在DataGear 5.4.1 中快速制作HTTP数据源服务端分页的数据表格看板

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】章节

点击【保存并展示】按钮,打开图表展示页,服务端分页表格制作完成!

官网地址:

www.datagear.tech

源码地址:

GitCode:gitcode.com/datageartec...

Gitee:gitee.com/datagear/da...

Github:github.com/datageartec...

相关推荐
独立开阀者_FwtCoder25 分钟前
【Augment】 Augment技巧之 Rewrite Prompt(重写提示) 有神奇的魔法
前端·javascript·github
我想说一句36 分钟前
事件机制与委托:从冒泡捕获到高效编程的奇妙之旅
前端·javascript
汤姆Tom42 分钟前
JavaScript reduce()函数详解
javascript
小飞悟44 分钟前
你以为 React 的事件很简单?错了,它暗藏玄机!
前端·javascript·面试
中微子1 小时前
JavaScript 事件机制:捕获、冒泡与事件委托详解
前端·javascript
蓝翔认证10级掘手1 小时前
🤯 家人们谁懂啊!我的摸鱼脚本它...它成精了!🚀
javascript
前端康师傅2 小时前
JavaScript 中你不知道的按位运算
前端·javascript
tianchang2 小时前
策略模式(Strategy Pattern)深入解析与实战应用
前端·javascript·代码规范
best6662 小时前
JavaScript的Math内置对象,到底是何方神圣?
javascript
掘金安东尼2 小时前
技术解析:高级 Excel 财务报表解析器的架构与实现
前端·javascript·面试