因excel中含大量函数,fromJSON和bind方法耗时较长。优化在jsonOptions中设置增量加载,回调函数中显示增量加载结束,但所有函数计算都不生效了。没有用过suspendCalcService和resumeCalcService
- var jsonOptions = {
- incrementalLoading: {
- loading: function (progress) {
- debugger;
- // alert('增量加载中。。。')
- console.log('增量加载中。。。')
- // loadingStatus.updateProgress(progress);
- },
- loaded: function () {
- debugger;
- alert('增量加载结束。。。')
- console.log('增量加载中。。。')
- // loadingStatus.updateText("Ready");
- }
- }
- }
- this.designer.getWorkbook().fromJSON(template, jsonOptions);
- let spread = this.designer.getWorkbook();
- // let sheet = spread.getActiveSheet();
- let sheet = spread.getSheetFromName(sheetName);//新增
- var table = sheet.tables.find(udataTable.rowRange.start, udataTable.colRange.start);
- var tableColumns = [];
- cols.forEach(item => {
- var tableColumn = new GC.Spread.Sheets.Tables.TableColumn();
- tableColumn.name(item.title);
- tableColumn.dataField(item.key);
- tableColumns.push(tableColumn);
- });
- debugger;
- // this.designer.getWorkbook().fromJSON(template);
- let aaa = JSON.stringify(template);
- this.current++;
- let bindstart = (new Date()).valueOf();
- table.bind(tableColumns, "data", tableData);//耗时较长
复制代码 |