页面树结构
转至元数据结尾
转至元数据起始

温馨提示

本文档的示例代码仅适用于本文档中的示例报表/场景。若实际报表/场景与示例代码无法完全适配(如使用功能不一致,或多个宏代码冲突等),需根据实际需求开发代码。

应用场景

页面定时刷新也是项目中比较常用的需求,如资源在大屏幕展示,要求当数据有变化时,页面会自动刷新,而不需要用户每次都要自己手动刷新一下页面。

实现方法

我们可以书写宏来实现页面在仪表盘自动刷新。

1、在实现页面自动刷新前,需要把页面定时刷新资源对应的查询禁用缓存。在数据集工具栏上点击高级设置按钮,在弹出的对话框中选择禁用缓存。

    

2、选中页面,右键选择 编辑宏 进入报表宏界面,然后创建一个客户端宏。对象page;事件onRenderPage;代码如下:2000表示2000毫秒。

宏代码
function main(page, pageContext) {
    setInterval(function() {
        page.refreshData()
    },
    2000)
}

说明:如果是多个页面都要求定时刷新,可以使用资源包实现。

注:对于仪表分析的图形需要定时刷新,请使用以下宏代码:

 function main(meterReport) {

           // 间隔2秒定时刷新报表

         setInterval(function() {
                 meterReport.elemRefresh_click_handler();

         },
            1000 * 6)
}
  • 无标签

评论

  1. 刘怡霞 发表:

    目前遇到一个问题,页面定时刷新,如果切换到浏览器的其他标签页,浏览器的内存就会持续增长,增长到一定程度就会使浏览器崩溃。

    建议可以使用以下宏来规避此问题,此宏的作用是,当切换到其他标签页时,页面不刷新:

    function main(page, pageContext) {

        setInterval(function() {

            if(!document.hidden) {

                 page.refreshData()

            }    

        },

        1000*5)

    }