请问下图文之间的联系是什么呢?
如果您的业务场景中从数据库获取ssjson文件,也有可行方案。SpreadJS的导出Excel和PDF分别需要通过Workbook:export()和Workbook:savePDF()触发,也就是需要一个Workbook实例。但是,您也说“希望用户在不打开页面情况下一键导出文件”,那么,就需要在导出前创建一个不可见的Workbook实例,在其中读入ssjson文件,再通过该Workbook执行导出。要让Workbook不可见,只需要在创建Workbook实例时不传入DOM元素即可。可参考如下伪码:
- // 假设存储了ssjson文件数据
- var ssjsonList = [];
- ssjsonList.forEach(ssjsonItem => {
- // 创建Workbook,在浏览器页面上不可见
- var curWorbook = new GC.Spread.Sheets.Workbook();
- // 读入ssjson文件
- curWorbook.import(ssjsonFile, successCallback?, errorCallback?, importOptions?);
- // 导出为Excel文件
- curWorbook.export(successCallback?, errorCallback?, exportOptions?);
- // 导出为PDF文件
- curWorbook.savePDF(successCallback, errorCallback, options?, sheetIndex?);
- });
复制代码
|