From a26ffd8ac388db475dfd38e4ae83098eeeee8bc8 Mon Sep 17 00:00:00 2001 From: javahuang Date: Thu, 22 Oct 2020 00:15:47 +0800 Subject: [PATCH] fix(bug fix): #26 #91 --- src/controllers/controlHistory.js | 12 ++++++++++-- src/global/api.js | 28 ++++++++++++++++++++++++++-- 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/src/controllers/controlHistory.js b/src/controllers/controlHistory.js index 3a95a4c..ecf27ea 100644 --- a/src/controllers/controlHistory.js +++ b/src/controllers/controlHistory.js @@ -22,6 +22,7 @@ import { } from '../global/refresh'; import { getSheetIndex } from '../methods/get'; import Store from '../store'; +import { selectHightlightShow } from './select'; function formulaHistoryHanddler(ctr, type="redo"){ if(ctr==null){ @@ -82,7 +83,6 @@ const controlHistory = { "dataVerification": ctr.dataVerification, "dynamicArray": ctr.dynamicArray } - jfrefreshgrid(ctr.data, ctr.range, allParam); // formula.execFunctionGroup(null, null, null, null, ctr.data);//取之前的数据 } @@ -414,6 +414,10 @@ const controlHistory = { } cleargridelement(e); + if (ctr.range) { + Store.luckysheet_select_save = ctr.range; + selectHightlightShow(); + } Store.clearjfundo = true; }, undo: function () { @@ -713,7 +717,11 @@ const controlHistory = { zoomNumberDomBind(); zoomRefreshView(); } - + + if (ctr.range) { + Store.luckysheet_select_save = ctr.range; + selectHightlightShow(); + } Store.clearjfundo = true; } }; diff --git a/src/global/api.js b/src/global/api.js index ad26e8b..24bb87a 100644 --- a/src/global/api.js +++ b/src/global/api.js @@ -323,10 +323,32 @@ export function setCellFormat(row, column, attr, value, options = {}) { // 特殊格式 if (attr == 'ct' && (!value || !value.hasOwnProperty('fa') || !value.hasOwnProperty('t'))) { return new TypeError('While set attribute \'ct\' to cell, the value must have property \'fa\' and \'t\'') - cellData.m = update(value.fa, cellData.v) } - cellData[attr] = value; + if (attr == 'bd') { + let cfg = $.extend(true, {}, Store.config); + if(cfg["borderInfo"] == null){ + cfg["borderInfo"] = []; + } + + let borderInfo = { + rangeType: "range", + borderType: "border-all", + color: "#000", + style: "1", + range: [{ + column: [column, column], + row: [row, row] + }], + ...value, + } + + cfg["borderInfo"].push(borderInfo); + Store.config = cfg; + } else { + cellData[attr] = value; + } + // refresh jfrefreshgrid(targetSheetData, { row: [row], @@ -897,6 +919,8 @@ export function insertRowOrColumn(type, index = 0, options = {}) { success } = {...options} + let _locale = locale(); + let locale_info = _locale.info; if (!isRealNum(number)) { if(isEditMode()){ alert(locale_info.tipInputNumber);