From dad6e2b2d144a31f4cfaaf84c90588e1a02ee006 Mon Sep 17 00:00:00 2001 From: mengshukeji Date: Tue, 24 Nov 2020 16:33:04 +0800 Subject: [PATCH] fix(formula): function fix :add row,formula errer --- .github/workflows/gitee-mirror.yml | 2 +- README-zh.md | 6 +++--- src/function/func.js | 7 ++++--- src/global/refresh.js | 4 +++- src/index.html | 2 +- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/.github/workflows/gitee-mirror.yml b/.github/workflows/gitee-mirror.yml index ed5bc5d..e1c9e22 100644 --- a/.github/workflows/gitee-mirror.yml +++ b/.github/workflows/gitee-mirror.yml @@ -33,7 +33,7 @@ jobs: # 填写地址:https://github.com/ly525/luban-h5/settings/secrets dst_token: ${{ secrets.GITEE_TOKEN }} # 项目同步白名单,可以选择填写多个,以英文逗号分割 - static_list: "Luckyexcel,Luckysheet,LuckysheetDemo,LuckyexcelDemo,LuckysheetDocs,chartMix" + static_list: "Luckyexcel,Luckysheet,LuckysheetDemo,LuckyexcelDemo,LuckysheetDocs,chartMix,LuckysheetServer" # 是否强制同步 force_update: true # 账号类型:对 luban-h5 而言是 user,因为是个人项目;如果是企业项目,请填写 org,因为是组织下的项目 diff --git a/README-zh.md b/README-zh.md index 02a94a4..4d3c388 100644 --- a/README-zh.md +++ b/README-zh.md @@ -21,11 +21,11 @@ ## 在线案例 - [协同编辑Demo](http://luckysheet.lashuju.com/demo/) -- [Java后台Luckysheet Server](https://github.com/mengshukeji/LuckysheetServer) +- [Java后台Luckysheet Server](https://gitee.com/mengshukeji/LuckysheetServer) ## 插件 -- excel导入导出库: [Luckyexcel](https://github.com/mengshukeji/Luckyexcel) -- 图表插件: [chartMix](https://github.com/mengshukeji/chartMix) +- excel导入导出库: [Luckyexcel](https://gitee.com/mengshukeji/Luckyexcel) +- 图表插件: [chartMix](https://gitee.com/mengshukeji/chartMix) ## 特性 diff --git a/src/function/func.js b/src/function/func.js index ef6a041..8000652 100644 --- a/src/function/func.js +++ b/src/function/func.js @@ -1632,9 +1632,10 @@ function luckysheet_getcelldata(txt) { sheetdata = luckysheetfile[index].data; rangetxt = val[0]; - // if (formula.execFunctionGroupData != null) { - // sheetdata = formula.execFunctionGroupData; - // } + // 开放execFunctionGroupData,luckysheetfile[index].data是旧值,故取得新值用来计算 + if (formula.execFunctionGroupData != null) { + sheetdata = formula.execFunctionGroupData; + } } if (rangetxt.indexOf(":") == -1) { diff --git a/src/global/refresh.js b/src/global/refresh.js index 4b8ad33..f6b5789 100644 --- a/src/global/refresh.js +++ b/src/global/refresh.js @@ -405,11 +405,13 @@ function jfrefreshgrid_adRC(data, cfg, ctrlType, ctrlValue, calc, filterObj, cf, //公式链中公式范围改变对应单元格值的改变 let funcData = []; if(calc.length > 0){ - // formula.execFunctionGroupData = data; + // 开放execFunctionGroupData,execfunction中执行到取得单元格内容的时候会取得旧值,故在此将新的值存入formula.execFunctionGroupData + formula.execFunctionGroupData = data; for(let i = 0; i < calc.length; i++){ let clc = calc[i]; let clc_r = clc.r, clc_c = clc.c, clc_i = clc.index, clc_funcStr = getcellFormula(clc_r, clc_c, clc_i, data); + let clc_result = formula.execfunction(clc_funcStr, clc_r, clc_c, clc_i,null, true); clc.func = clc_result; diff --git a/src/index.html b/src/index.html index 77cd158..d1d20ca 100644 --- a/src/index.html +++ b/src/index.html @@ -119,7 +119,7 @@ // console.info(index, isPivotInitial, isNewSheet) }, rangeSelect:function(index, sheet){ - console.info(index, sheet) + // console.info(index, sheet) }