From 57ff2b959b4be8d5cad559624d92f00e996d315f Mon Sep 17 00:00:00 2001 From: wpxp123456 <2677556700@qq.com> Date: Fri, 4 Dec 2020 17:00:18 +0800 Subject: [PATCH] fix(bug): bug bug fix #182, fix #220 --- src/controllers/server.js | 13 +++++++++---- src/global/extend.js | 37 ++++++++++++++++++++++++++++++++++--- 2 files changed, 43 insertions(+), 7 deletions(-) diff --git a/src/controllers/server.js b/src/controllers/server.js index a42e90c..d46a355 100644 --- a/src/controllers/server.js +++ b/src/controllers/server.js @@ -1,6 +1,7 @@ import pako from 'pako' import { showloading, hideloading } from '../global/loading'; import { luckysheetrefreshgrid, jfrefreshgrid_rhcw } from '../global/refresh'; +import editor from '../global/editor' import { sheetHTML, luckyColor } from './constant'; import sheetmanage from './sheetmanage'; import menuButton from './menuButton'; @@ -348,7 +349,8 @@ const server = { file.data[r][c] = value; if(index == Store.currentSheetIndex){//更新数据为当前表格数据 - Store.flowdata = file.data; + Store.flowdata = file.data; + editor.webWorkerFlowDataCache(Store.flowdata);//worker存数据 //如果更新的单元格有批注 if(value != null && value.ps != null){ @@ -383,7 +385,8 @@ const server = { } if(index == Store.currentSheetIndex){//更新数据为当前表格数据 - Store.flowdata = file.data; + Store.flowdata = file.data; + editor.webWorkerFlowDataCache(Store.flowdata);//worker存数据 //如果更新的单元格有批注 for(let r = r1; r <= r2; r++){ @@ -601,7 +604,8 @@ const server = { file["config"].borderInfo = borderInfo; if(index == Store.currentSheetIndex){ - Store.flowdata = data; + Store.flowdata = data; + editor.webWorkerFlowDataCache(Store.flowdata);//worker存数据 Store.config["merge"] = mc; Store.config["borderInfo"] = borderInfo; @@ -651,7 +655,8 @@ const server = { file["config"].borderInfo = borderInfo; if(index == Store.currentSheetIndex){ - Store.flowdata = data; + Store.flowdata = data; + editor.webWorkerFlowDataCache(Store.flowdata);//worker存数据 Store.config["merge"] = mc; Store.config["borderInfo"] = borderInfo; diff --git a/src/global/extend.js b/src/global/extend.js index 624fd7a..0949e67 100644 --- a/src/global/extend.js +++ b/src/global/extend.js @@ -1007,6 +1007,37 @@ function luckysheetdeletetable(type, st, ed, sheetIndex) { let file = Store.luckysheetfile[curOrder]; let d = $.extend(true, [], file.data); + if(st < 0){ + st = 0; + } + + if(ed < 0){ + ed = 0; + } + + if(type == "row"){ + if(st > d.length - 1){ + st = d.length - 1; + } + + if(ed > d.length - 1){ + ed = d.length - 1; + } + } + else{ + if(st > d[0].length - 1){ + st = d[0].length - 1; + } + + if(ed > d[0].length - 1){ + ed = d[0].length - 1; + } + } + + if(st > ed){ + return + } + let slen = ed - st + 1; let cfg = $.extend(true, {}, file.config); @@ -1622,15 +1653,15 @@ function luckysheetdeletetable(type, st, ed, sheetIndex) { cfg["borderInfo"] = borderInfo; } - //删除选中行 - d.splice(st, slen); - //空白行模板 let row = []; for (let c = 0; c < d[0].length; c++) { row.push(null); } + //删除选中行 + d.splice(st, slen); + //删除多少行,增加多少行空白行 for (let r = 0; r < slen; r++) { d.push(row);