历史版本8 :JS实现FVS表格组件定时翻页 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

适用场景:安装了「FineVis数据可视化」插件的用户,可参考本文了解 FVS 模板的相关功能。

1.1 版本

报表服务器版本
插件版本功能变动
11.0.9V1.13.1
表格组件支持分页相关接口,详情可参见:FVS页面接口

1.2 预期效果

表格组件 设置了分页功能,希望在预览模板时表格组件可以自动、定时翻页展示数据。预期效果如下图所示:

1)固定时间翻页

B52C2581-6E9D-4D72-86C2-24565682D151.GIF

2)自定义时间翻页

自定义翻页.gif

1.3 实现思路

给表格组件添加「初始化后事件」,通过 setInterval() 方法结合分页接口实现表格组件定时刷新翻页。

2. 示例编辑

2.1 新建模板

点击设计器左上角「文件>新建可视化看板」,创建一张空白看板,可自定义名称和尺寸。如下图所示:

1696926492272814.png

2.2 数据准备

新建数据库查询 ds1 ,SQL 查询语句为:SELECT * FROM 销量 。如下图所示:

1650533446953975.png

2.3 设计表格

2.3.1 添加表格

添加一个表格组件,点击「编辑组件」进入表格编辑界面。如下图所示:

1678177528316306.png

2.3.2 设计表格内容

1)将数据集中的字段拖入单元格,设置对应标题。本例将 A2 单元格的数据设置修改为「列表」,以便于后续设置分页。表格样式如下图所示:

1680234090436291.png

2)选中标题行,设置重复与冻结,即可在每一页上显示标题行。如下图所示:

1680234454356177.png

3)选中 A2 单元格,设置「条件属性>分页>行后分页」,条件选择「公式」,输入公式 &A2 % 5 = 0  ,即 5 行之后分页。如下图所示:

1680234678943407.png

设置完成后,点击表格编辑界面左上角「返回可视化看板」。

2.3.3 开启表格分页按钮

设置表格组件内容自适应方式为「双向铺满」,在表格工具栏中勾选「显示分页按钮」。如下图所示:

Snag_f51797.png

2.3.4 添加初始化后事件

1)固定时间翻页

给表格组件添加一个「初始化后事件」,输入 JavaScript 代码:

var re=duchamp.getWidgetByName("表格1_页面1"); //获取表格组件
setInterval(function(){
if(re.getCurrentPage()==re.getAllPages()){
re.getFirstPage().goto() //当前页码等于总页数时,跳转到第一页
}
else{
re.getNextPage().goto()  //跳转到下一页
}
},3000)   //每 3 秒调用一次接口

步骤如下图所示:

661105.png

2)自定义时间翻页

给表格组件添加一个「初始化后事件」,输入 JavaScript 代码:

const widget = duchamp.getWidgetByName("表格1_页面1"); //获取表格组件
let firstPageCountDown = 1;
setInterval(function () {
const currentIndex = widget.getCurrentPage().getIndex();
if (currentIndex === 1 && firstPageCountDown !== 0) {
// 如果是第一页并且firstPageCountDown不为 0 时,不进行切页操作。标准减 1
firstPageCountDown = firstPageCountDown - 1;
return;
}
firstPageCountDown = 1;
// 如果不是第一页,或者是第一页但是标志firstPageCountDown为 0 时,进行切页操作
if (currentIndex == widget.getAllPages().length) {
widget.getFirstPage().goto(); // 当前页码等于总页数时,跳转到第一页
} else {
widget.getNextPage().goto(); // 跳转到下一页
}
}, 3000); // 每 3 秒调用一次接口

步骤如下图所示:   

661020.png

2.4 效果预览

2.4.1 PC 端

点击右上角「保存」,点击「预览」。预期效果如 1.2 节所示。

固定时间翻页:每隔 3s 表格自动翻页,到最后一页时则跳转到第一页继续循环。

自定义时间翻页:表格第一页 6s 后自动翻页,剩余页面每隔 3s 自动翻页,到最后一页时则跳转到第一页继续循环

2.4.2 移动端

预览方式请参考 FVS移动端预览 ,效果如下图所示:

1)固定时间翻页


2)自定义时间翻页

自定义翻页移动端.gif

3. 模板下载编辑