diff --git a/README.md b/README.md
index d930a2a..d903b31 100644
--- a/README.md
+++ b/README.md
@@ -3,6 +3,9 @@

[](https://gitter.im/mengshukeji/Luckysheet?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
+
+
diff --git a/docs/zh/guide/api.md b/docs/zh/guide/api.md
index fff2e20..b365759 100644
--- a/docs/zh/guide/api.md
+++ b/docs/zh/guide/api.md
@@ -9,7 +9,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
## 单元格操作
-### getCellValue(row, column [,setting])
+### getCellValue(row, column [,setting])
- **参数**:
@@ -504,10 +504,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
[
{
"v": "vaule1",
- "ct": {
- "fa": "General",
- "t": "g"
- },
+ "ct": { "fa": "General", "t": "g" },
"m": "vaule1",
"bg": "rgba(255,255,255)",
"bl": 0,
@@ -520,10 +517,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
},
{
"v": "value3",
- "ct": {
- "fa": "General",
- "t": "g"
- },
+ "ct": { "fa": "General", "t": "g" },
"m": "value3",
"bg": "rgba(255,255,255)",
"bl": 0,
@@ -538,10 +532,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
[
{
"v": "vaule2",
- "ct": {
- "fa": "General",
- "t": "g"
- },
+ "ct": { "fa": "General", "t": "g" },
"m": "vaule2",
"bg": "rgba(255,255,255)",
"bl": 0,
@@ -554,10 +545,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
},
{
"v": "value4",
- "ct": {
- "fa": "General",
- "t": "g"
- },
+ "ct": { "fa": "General", "t": "g" },
"m": "value4",
"bg": "rgba(255,255,255)",
"bl": 0,
@@ -637,9 +625,34 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
+ {Number} [order]: 工作表索引;默认值为当前工作表索引
- **说明**:
-
+
复制指定工作表指定单元格区域的数据,返回`json`格式的数据
+- **示例**:
+
+ - 当前选区为"A1:B2",首行为标题取得json
+
+ `luckysheet.getRangeJson(true)`
+
+ 则返回结果为:
+ ```json
+ [
+ { "A": "value1", "B": "value3" },
+ { "A": "value2", "B": "value4" }
+ ]
+ ```
+
+ - 当前选区为"A1:B2",首行不为标题取得json
+
+ `luckysheet.getRangeJson(false)`
+
+ 则返回结果为:
+ ```json
+ [
+ { "value1": "value2", "value3": "value4" }
+ ]
+ ```
+
------------
### getRangeArray(dimensional [,setting])
@@ -652,7 +665,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
+ `"oneDimensional"`: 一维数组
+ `"twoDimensional"`: 二维数组
- + `"custom"`: 自定义维数组
+ + `"custom"`: 自定义行列数的二维数组
- {PlainObject} [setting]: 可选参数
+ {Number} [row]: `dimensional`为`custom`的时候设置,多维数组的行数
+ {Number} [column]: `dimensional`为`custom`的时候设置,多维数组的列数
@@ -661,10 +674,80 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
- **说明**:
- 复制指定工作表指定单元格区域的数据,返回一维、二维或者自定义维数组格式的数据。
+ 复制指定工作表指定单元格区域的数据,返回一维、二维或者自定义行列数的二维数组的数据。
特别注意,只有在`dimensional`设置为`custom`的时候,才需要设置`setting`中的`row`和`column`
+- **示例**:
+
+ - 当前选区为"A1:B2",一维数组
+
+ `luckysheet.getRangeArray('oneDimensional')`
+
+ 则返回结果为:
+ ```json
+ ["value1","value3","value2","value4"]
+ ```
+
+ - 当前选区为"A1:B2",二维数组
+
+ `luckysheet.getRangeArray('twoDimensional')`
+
+ 则返回结果为:
+ ```json
+ [
+ [ "value1", "value3" ],
+ [ "value2", "value4" ]
+ ]
+ ```
+
+ - 当前选区为"A1:C5",由 'value1'到'value15'的值组成,得到3
+ 行2列的二维数组数据
+
+ `luckysheet.getRangeArray('custom', { row: 3, column: 2 })`
+
+ 则返回结果为:
+ ```json
+ [
+ [
+ {
+ "m": "value1",
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value1"
+ },
+ {
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value6",
+ "m": "value6"
+ }
+ ],
+ [
+ {
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value11",
+ "m": "value11"
+ },
+ {
+ "m": "value2",
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value2"
+ }
+ ],
+ [
+ {
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value7",
+ "m": "value7"
+ },
+ {
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value12",
+ "m": "value12"
+ }
+ ]
+ ]
+ ```
+
------------
### getRangeDiagonal(type [,setting])
@@ -676,6 +759,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
`type`可能的值有:
+ `"normal"`: 对角线
+ + `"anti"`: 反对角线
+ `"offset"`: 对角线偏移
- {PlainObject} [setting]: 可选参数
- {Number} [column]: `type`为`offset`的时候设置,对角偏移的列数
@@ -688,6 +772,61 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
特别注意,只有在`type`设置为`offset`的时候,才需要设置`setting`中的`column`。
+- **示例**:
+
+ - 当前选区为"A1:B2",对角线
+
+ `luckysheet.getRangeDiagonal('normal')`
+
+ 则返回结果为:
+ ```json
+ [
+ {
+ "m": "value1",
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value1"
+ },
+ {
+ "m": "value4",
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value4"
+ }
+ ]
+ ```
+
+ - 当前选区为"A1:B2",反对角线
+
+ `luckysheet.getRangeDiagonal('anti')`
+
+ 则返回结果为:
+ ```json
+ [
+ {
+ "m": "value3",
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value3"
+ },
+ {
+ "m": "value2",
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value2"
+ }
+ ]
+ ```
+ - 当前选区为"A1:B2",对角线偏移1列
+
+ `luckysheet.getRangeDiagonal('offset', { column: 1 })`
+
+ 则返回结果为:
+ ```json
+ [
+ {
+ "m": "value3",
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value3"
+ }
+ ]
+ ```
------------
### getRangeBoolean([setting])
@@ -702,6 +841,20 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
复制指定工作表指定单元格区域的数据,返回布尔值的数据
+- **示例**:
+
+ - 当前选区为"A1:B2"
+
+ `luckysheet.getRangeBoolean()`
+
+ 则返回结果为:
+ ```json
+ [
+ [ false, false ],
+ [ false, false ]
+ ]
+ ```
+
------------
### setRangeShow(range [,setting])
@@ -757,6 +910,52 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
将一个单元格数组数据赋值到指定的区域,数据格式同`getRangeValue`方法取到的数据。
+- **示例**:
+
+ + 赋值到当前选区
+
+ ```js
+ const data = [
+ [
+ {
+ "m": "value1",
+ "ct": {
+ "fa": "General",
+ "t": "g"
+ },
+ "v": "value1"
+ },
+ {
+ "m": "value3",
+ "ct": {
+ "fa": "General",
+ "t": "g"
+ },
+ "v": "value3"
+ }
+ ],
+ [
+ {
+ "m": "value2",
+ "ct": {
+ "fa": "General",
+ "t": "g"
+ },
+ "v": "value2"
+ },
+ {
+ "m": "value4",
+ "ct": {
+ "fa": "General",
+ "t": "g"
+ },
+ "v": "value4"
+ }
+ ]
+ ]
+ luckysheet.setRangeValue(data)
+ ```
+
------------
### setRangeFormat(attr, value [,setting])
@@ -791,9 +990,11 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
- **示例**:
- 设置当前工作表`"A1:B2"`范围的单元格文本加粗
- `luckysheet.setRangeFormat("bl", 1, {range:"A1:B2"})`
+
+ `luckysheet.setRangeFormat("bl", 1, {range:"A1:B2"})`
- 设置第二个工作表的`"B2"`和`"C4:D5"`范围的单元格背景为红色
- `luckysheet.setRangeFormat("bg", "#ff0000", {range:["B2","C4:D5"], order:1})`
+
+ `luckysheet.setRangeFormat("bg", "#ff0000", {range:["B2","C4:D5"], order:1})`
------------
@@ -825,6 +1026,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
### setRangeMerge(type [,setting])
- **参数**:
+
- {String} [type]: 合并单元格类型
`type`可能的值有:
@@ -832,6 +1034,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
+ `"all"`: 全部合并,区域内所有单元格合并成一个大的单元格
+ `"horizontal"`: 水平合并,区域内在同一行的单元格合并成一个单元格
+ `"vertical"`: 垂直合并,区域内在同一列的单元格合并成一个单元格
+
- {PlainObject} [setting]: 可选参数
+ {Array | Object | String} [range]: 选区范围,支持选区的格式为`"A1:B2"`、`"sheetName!A1:B2"`或者`{row:[0,1],column:[0,1]}`,允许多个选区组成的数组;默认为当前选区
+ {Number} [order]: 工作表索引;默认值为当前工作表索引
@@ -841,6 +1044,36 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
为指定索引的工作表,选定的范围设定合并单元格
+- **示例**:
+
+ - 当前选区 'A1:B2' 设置为合并单元格,类型为全部合并
+
+ `luckysheet.setRangeMerge("all")`
+ 得到 'A1:B1' 的数据为:
+ ```json
+ [
+ [
+ {
+ "m": "value1",
+ "ct": { "fa": "General", "t": "g" },
+ "v": "value1",
+ "mc": { "r": 0, "c": 0, "rs": 2, "cs": 2 }
+ },
+ {
+ "mc": { "r": 0, "c": 0 }
+ }
+ ],
+ [
+ {
+ "mc": { "r": 0, "c": 0 }
+ },
+ {
+ "mc": { "r": 0, "c": 0 }
+ }
+ ]
+ ]
+ ```
+
------------
### cancelRangeMerge( [setting])
@@ -856,6 +1089,12 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
为指定索引的工作表,选定的范围取消合并单元格
+- **示例**:
+
+ - 当前选区 'A1:B2' 已为合并单元格,现在要取消合并
+
+ `luckysheet.cancelRangeMerge()`
+
------------
### setRangeSort(type [,setting])
@@ -1004,10 +1243,10 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
`luckysheet.setRangeConditionalFormatDefault("lastPercent",{ type: 'value', content: [15] })`
- 突出显示高于平均值的单元格
- luckysheet.setRangeConditionalFormatDefault("AboveAverage",{ type: 'value', content: ['AboveAverage'] })`
+ `luckysheet.setRangeConditionalFormatDefault("AboveAverage",{ type: 'value', content: ['AboveAverage'] })`
- 突出显示低于平均值的单元格
- luckysheet.setRangeConditionalFormatDefault("SubAverage",{ type: 'value', content: ['SubAverage'] })`
+ `luckysheet.setRangeConditionalFormatDefault("SubAverage",{ type: 'value', content: ['SubAverage'] })`
------------
@@ -1122,6 +1361,11 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
为指定索引的工作表,选定的范围开启条件格式,返回开启条件格式后的数据。
+- **示例**:
+
+ - 当前选区范围开启条件格式,显示渐变色
+ `luckysheet.setRangeConditionalFormat("dataBar", { format: ["#63c384", "#ffffff"] })`
+
------------
### deleteRangeConditionalFormat(itemIndex [,setting])
@@ -1142,7 +1386,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
- **示例**:
- 删除第三个条件格式规则
- `luckysheet.editRangeConditionalFormat(2)`
+ `luckysheet.deleteRangeConditionalFormat(2)`
------------
@@ -1159,6 +1403,11 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
清除指定工作表指定单元格区域的内容,返回清除掉的数据,不同于删除选区的功能,不需要设定单元格移动情况
+- **示例**:
+
+ - 清空当前选区内容
+ `luckysheet.clearRange()`
+
------------
### deleteRange(move [,setting])
@@ -1180,6 +1429,11 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
删除指定工作表指定单元格区域,返回删除掉的数据,同时,指定是右侧单元格左移还是下方单元格上移
+- **示例**:
+
+ - 删除当前选区并且在删除后,右侧单元格左移
+ `luckysheet.deleteRange('left')`
+
------------
### insertRange(move [,setting])
@@ -1208,6 +1462,11 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
在指定工作表指定单元格区域,赋值单元格数据,或者新建一块空白区域,返回data数据,同时,指定活动单元格右移或者下移
+- **示例**:
+
+ - 当前选区位置插入空白单元格,并且插入后当前选区单元格右移
+ `luckysheet.insertRange('right')`
+
------------
### matrixOperation(type [,setting])
@@ -1237,6 +1496,20 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
指定工作表指定单元格区域的数据进行矩阵操作,返回操作成功后的结果数据
+- **示例**:
+
+ - 当前选区上下翻转
+
+ `luckysheet.matrixOperation('flipUpDown')`
+
+ 原来的选区复制为二维数组:
+
+ `[["value1","value3"],["value2","value4"]]`
+
+ 上下翻转后选区复制为二维数组:
+
+ `[["value2","value4"],["value1","value3"]]`
+
------------
### matrixCalculation(type, number [,setting])
@@ -1253,9 +1526,6 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
+ `"power"`: 次方
+ `"root"`: 次方根
+ `"log"`: log
- + `"removeDuplicateByRow"`: 按行删除重复值
- + `"removeDuplicateByColumn"`: 按列删除重复值
- + `"newMatrix"`: 生产新矩阵
- {Number} [number]: 计算数值,如: 2
- {PlainObject} [setting]: 可选参数
+ {Array | Object | String} [range]: 选区范围,支持选区的格式为`"A1:B2"`、`"sheetName!A1:B2"`或者`{row:[0,1],column:[0,1]}`,只能为单个选区;默认为当前选区
@@ -1266,6 +1536,20 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
指定工作表指定单元格区域的数据进行矩阵计算,返回计算成功后的结果数据
+- **示例**:
+
+ - 当前选区所有单元格值加2
+
+ `luckysheet.matrixCalculation('plus', 2)`
+
+ 原来的选区复制为二维数组:
+
+ `[[1,2],[3,4]]`
+
+ 加2后选区复制为二维数组:
+
+ `[[3,4],[5,6]]`
+
------------
## 工作表操作
@@ -1509,7 +1793,7 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
- **说明**:
- 初始化一个luckysheet,可包含多个工作表,参考 [配置列表](/zh/guide/config.html)
+ 初始化一个Luckysheet,可包含多个工作表,参考 [配置列表](/zh/guide/config.html)
------------
@@ -1526,6 +1810,19 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
------------
+### destroy([setting])
+
+- **参数**:
+
+ - {PlainObject} [setting]: 可选参数
+ + {Function} [success]: 表格释放成功后的回调函数
+
+- **说明**:
+
+ 删除并释放表格
+
+------------
+
### getScreenshot([setting])
- **参数**:
@@ -1682,12 +1979,43 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
celldata => data ,celldata一维数组数据转化成表格所需二维数组
------------
+
## 旧版API
::: warning
为保持兼容性,仍然支持旧版API,但是已不推荐使用。
:::
+### getcellvalue([r] [,c] [,data] [,type])
+- **参数**:
+ - {Number} [r]:单元格所在行数;可选值;从0开始的整数,0表示第一行
+ - {Number} [c]:单元格所在列数;可选值;从0开始的整数,0表示第一列
+ - {Array} [data]:表数据,二维数组;可选值;默认值为当前表格数据
+ - {String} [type]:单元格属性值;可选值;默认值为'v',表示获取单元格的实际值
+- **说明**:
+
+ 此方法为获取单元格的值。
+
+ - luckysheet.getcellvalue():返回当前工作表的所有数据;
+ - luckysheet.getcellvalue(0):返回当前工作表第1行数据;
+ - luckysheet.getcellvalue(null,0):返回当前工作表第1列数据;
+ - luckysheet.getcellvalue(0,0):返回当前工作表第1行第1列单元格的数据的v值;
+ - luckysheet.getcellvalue(1,1,null,'m'): 返回指定data数据的第2行第2列单元格的原始值。
+
+ 特殊情况:单元格格式为yyyy-MM-dd,type为'v'时会强制取'm'显示值
+
+ > 推荐使用新API: getCellValue
+
+
+
+### getluckysheetfile()
+- **说明**:
+
+ 返回所有表格数据结构的一维数组`luckysheetfile`
+
+ > 推荐使用新API: [getLuckysheetfile](#getLuckysheetfile())
+------------
+
### getconfig()
- **说明**:
@@ -1727,6 +2055,23 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
------------
+## setcellvalue(r, c, d, v)
+- **参数**:
+ - {Number} [r]:单元格所在行数;从0开始的整数,0表示第一行。
+ - {Number} [c]:单元格所在列数;从0开始的整数,0表示第一列。
+ - {Array} [d]:表数据;可选值;二维数组。
+ - {Object | String | Number} [v]:要设置的值;可为对象,对象是是要符合单元格对象格式。
+- **说明**:
+
+ 设置某个单元格的值。可配合`luckysheet.jfrefreshgrid()`刷新查看单元格值改变。
+
+ ```js
+ luckysheet.setcellvalue(0, 0, luckysheet.flowdata(), 'abc');
+ luckysheet.jfrefreshgrid();
+ ```
+
+------------
+
## jfrefreshgrid()
- **说明**:
@@ -1734,7 +2079,6 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
> 推荐使用新API: [refresh](#refresh([setting]))
-
------------
## setluckysheet_select_save(v)
@@ -1787,10 +2131,4 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
二维数组数据转化成 `{r, c, v}` 格式 一维数组
- > 推荐使用新API:transToCellData
-
-------------
-## destroy()
-- **说明**:
-
- 删除并释放表格
\ No newline at end of file
+ > 推荐使用新API:transToCellData
\ No newline at end of file