1

可以将 javascript 代码放入 ic3report-local.js 以在每个报告中使用。可以在报告的 Javascript 中调用其中的函数。

但是,是否有可能在每个报告中自动触发特定事件(例如构建后)的函数?还是我必须在每个报告中都调用它?

我们想在构建后为每个报告添加一个词汇表。

4

1 回答 1

2

您可以尝试附加到全局报告事件:

var reporting = ic3.startReport(options);
reporting.bind(viz.EventType.onReportRendered, 
               function(){
                   alert("report rendered")
               }
);

在 ic3reporting-local.js 中使用此功能是可用的,但可能会破坏加载顺序,因为您需要使用自己的实现包装其中一个启动方法(因为在加载此文件时我们没有报告实例)。在将以下代码添加到全局 javascript 文件之前,请确保您使用的是最新的可用版本。

var originalStart = ic3.startReport;
ic3.startReport = function(options) {
    var reporting = originalStart(options);
    reporting.bind(viz.EventType.onReportRendered, 
                   function(){
                       alert("report rendered")
                   });
    return reporting;
}

如果应用此代码后出现任何问题,您可以从 icCube IDE 的 Docs -> applocal -> ic3reporting-local.js 编辑 ic3reporting-local.js

于 2016-08-18T10:33:24.120 回答