如图,这里要在 导出下拉菜单中新增一个签章PDF的导出。
通过分析源码,发现这个菜单的定义是再报表预览加载的html页面里面
咋们如何再这里面插入我们新加的菜单项呢。
首先该页面的内容是通过MemXPageActor的flushHtml方法产生的。所以我们需要继承MemXPageActor来重载flushHtml。在里面加入自己的新的菜单项以及调用的js。
通过扩展ActorProvider来加入自己的MemXPageActor类,在重载方法中这样写:
if(str6.indexOf("{\"src\":\"PDF\",\"type\":\"export-pdf\",\"iconSrc\":\"css:x-emb-pdf\",\"showIconSrc\":true,\"showTextSrc\"") != -1){
FineLoggerFactory.getLogger().info("have ....");
str6 = str6.replace("{\"src\":\"PDF\",\"type\":\"export-pdf\",\"iconSrc\":\"css: